Thursday, June 23, 2011

Submitting an app to the app store - try again

Well, as I discussed in this blog entry:

http://gettingintomobile.blogspot.com/2011/05/submitting-app-to-iphone-app-store.html

I'm trying to get an app submitted to the app store. The problem last time was that the client thought he had signed up for an account, but hadn't. I'm not sure how all that worked, but now he thinks he's all signed up. So - we'll give it another try.

First, I'll review the blog to see what it was all about. But I want to quickly get to checking to make sure he has a valid account.

Ok, I need to log in to the iPhone developer's portal.

Ok, the signin works.

Now, let's plug in my device and start up xcode.

Hmm, the battery must have been totally dead. It's not even starting up - there's just an image of a battery.

Ok, I've just regenerated the certificate signing request in "Request a Certificate From a Certificate Authority" and saved something to a folder cl**yupload, as specified here.


The next step (where I got stuck last time) is:

Logging in to the iPhone Developer Program Portal

Once you have generated the certificate signing request, you need to login to Apple's iPhone Dev Center (see Figure 7). Click on the iPhone Developer Program Portal link on the right of the page. Remember, you need to pay US$99 in order to access this page.

This, I've now done.


Hmm, it says:

In the iPhone Developer Program Portal page, click the Launch Assistant button (see Figure 8) to walk you through the process of provisioning your iPhone and generating the development certificate.


Don't see the launch assistant.

What I do see is something like "prepare for app submission".

Here's what's in there:

In addition to your binary, you will need to submit or assign several attributes for your app, including:

Application Name
Application Description
Primary and Secondary Category
Subcategories
Copyright
App Rating
Keywords
SKU Number
Application URL
Screen shots
Support URL
Support Email Address
End User License Agreement
Pricing, Available Date, Territories
Large App Icon 512 x 512

Well - I'll have to generate the screen shots, and the large app icon. What about SKU number? What is app rating? what will I use for the EULA? What is the application url?

This url gives info on the SKU. Basically it's completely optional.

http://forums.macrumors.com/showthread.php?t=554314

On the rating, this url:

http://appreview.tumblr.com/

Suggests 4+ might be ok. Also has good feedback on rejection reasons.

This url:

http://www.iphonedevsdk.com/forum/iphone-sdk-development/7550-app-store-submission-needs-support-url.html

Suggests he doesn't need a web site or a support url.

But someone put http://www.apple.com/

This url:

http://www.apple.com/

Has a checklist for submitting your app.

What about the EULA?

Ok, it's optional, and Apple will provide one, per this url:

http://www.slideshare.net/appsolutegenius/iphone-app-store-submission-process

Ok. Now we're getting somewhere.

Ok, now for the icons.

The small one, according the the above url:

57 pixel sq
72 pixels per inch
rgb
flattened
no transparenc
24 bit png

Large:
512 pixel sq
72 pixels per inch
rgb
flattened
no transparencw
High quality jpeg or TIFF.

So, how to I check this? Let's bring it up first in Preview.

Ok, that worked out pretty well. You can specify square pixels and pixles per inch.
It was already png, I guess it's flattened because it doesn't look 3d, and there's no way it's transparent. The only thing I don't know if it's RGB and I'm going to wing it.

Ok. What about the larger icon?

Too fuzzy.

I'm going to grab another publicly available eye image. Although it's just black and white, it is better defined and looks more normal as a square. I erased some of the blurrishness with Gimp, which is about all I can do with that thing.

Ok, screen shots. How do I get those? I assume I'm going to have to run my app on my iPod - let's double check it.

Argh. The application "xxx" cannot be run be run because the provisioning profile has expired. Dagblaggit. Now, I'm going to have to figure this one out.

This is my concern:

http://learn-iphone-app-development.com/2011/03/08/expired-provisioning-profiles-why-wont-my-app-rundebug/

The application cannot be opened because the provisioning profile has expired.” Ok, that’s a little more clear, but we’re still in Apple code signing hell, which any iPhone developer knows can eat up hours of time.

There's a screen that shows you your profiles:

This screen can be found by bringing up Organizer while your device is plugged in, and then clicking on your device. What appears to have happened is that even though our new provisioning profile was downloaded by the development machine, and even though that profile was distributed to this iPad, the old profile remained and was being used by default.

Ok, but where is this organizer app? Can't seem to find it. How about "display provisioning profile". Ok, it's in xcode under "windows".

So, my profiles, all 3 of them, have red marks next to them. I think I need to get a good provisioning profile. Uhp - since I signed on as his, I don't know what my signon is anymore. Annoying!


Back to this:

http://mobiforge.com/developing/story/deploying-iphone-apps-real-devices

First, obtain the 40-character identifier that uniquely identitfies your iPhone/iPod Touch. To do so, connect your device to your Mac and start Xcode. Select the Window > Organizer menu item to launch the Organizer application. Figure 1 shows the Organizer application showing the identifier of my iPhone. Copy this identifier and save it somewhere. You will need it later on.


Ok, well I just created a new CertificateSigningRequest, just in case. Then, I logged on and chose something like launch provisioning assistant (?). My device and my existing developer certificate are already there, so I just select those.

I'm keeping my device and AppId info under C's upload folder

Ok, it says installed. I delete the other guys. Let's try it.

Awesome. Thanks http://mobiforge.com/developing/story/deploying-iphone-apps-real-devices - you saved me some sweat there. Nice job, self, not letting that turn into a rathole. I don't know which developer certificate it's using - I have two under my name and one under my company name and one under my client's name. But, it's working.

Ok, back in business. How to get screen shots?

http://gigaom.com/apple/take-screenshots-from-your-iphone/

"Open Xcode and open the Organizer window (from the Window menu). Plug in your iPhone or iPod Touch and in a few seconds, it should appear in the list of devices on the left. The first time you plug in your iPhone or iPod Touch you will be asked if you want to use that device for development."

Can do that.

Oops - I spoke to soon. I'm getting the invalid provisioning message again. How do I delete the old ones? I deleted them, by right click and delete - but the showed up once I finished the wizard.

Dagbaggit. Ah, ok, keep following the http://mobiforge.com/developing/story/deploying-iphone-apps-real-devices suggestions, uninstall the app, clean all targets, and my own addition, restart xCode - and it's working again. Phew. Nice job not panicking there.

Ok. Can we do some screen shots? Seriously.


Well, for the screenshot, nothing appears in organizer. Let's google it. Ok, I guess I have to click on the device first or something. Anyway, I got it. Unfortunately, I noticed an apostrophe not coming up right. The question is, the only option it's giving me is to save it as the default image for the app, whatever that means. I'm not interested in that.

http://iphonedevelopertips.com/camera/capture-a-screenshot-on-iphone.html

Just open Xcode with your device connected, Window->Organizer, click on your device, and then you’ll see the screenshot tab. Get the device to the point that you need a screenshot and click the capture button in Organizer. Then, just drag the screenshot from organizer onto your desktop (or where ever) and you’re good to go. Same result as your process, but you can skip the whole e-mail step.

Thanks Adam Byram, wherever you are.

Ok, whew. Good job, me. I've gotten all the prep-work done. That deserves a nice cup of tea, and a little bit of a browse of the internet. Say, 10 minutes. Set the timer.

Done; let's post this - it's pretty long, and hopefully finish up on the next one.

No comments:

Post a Comment