Help... step-by-step tutorial to get a Flex Mobile app in the Apple App Store using IntelliJ
Hi all,
Maybe I am not very smart, or maybe Apple makes the life of developers utterly miserable, or maybe I am stubborn to try to use IntelliJ instead of that horrible piece of cr*p called Flash Builder.
Whichever of the three it is, I am sure I'm not the only one that gets rather frustrated because of not being able to get a Flex Mobile app through all steps of App Store submission.
I have followed every step in these two guides:
http://www.adobe.com/devnet/flash/articles/app_store_guide.html and
http://devgirl.org/2011/06/20/flexair-for-ios-development-process-explained/
These however are tailored to Flex/Flash Builder, so in some cases one needs to improvise. It would be FANTASTIC if one of you (staff or readers) could provide a step-by-step tutorial to outline precisely what to do for IntelliJ (I am currently trying 11.1).
I am not delivering to my client because I am apparently too stupid to get this to work. Or *whispers* should I go back to Flash Builder and try things from there?
Best, Steven
PS
The problems I have remaining are:
1. Icons. I have included in the application descriptor:
<icon>
<image29x29>assets/images/icon-logo-29.png</image29x29>
<image32x32>assets/images/icon-logo-32.png</image32x32>
<image48x48>assets/images/icon-logo-48.png</image48x48>
<image72x72>Icon-72.png</image72x72>
<image114x114>assets/images/icon-logo-114.png</image114x114>
<image128x128>assets/images/icon-logo-128.png</image128x128>
</icon>
Yet Application Loader complains I need to define in Info.plist CFBundleIcons, CFBundleIconFiles, CFBundleIconFile, or provide a default icon.png of 72x72 (it is an iPad app). So, I included Icon.png in the bundle (using the IntelliJ dialog). Error when building:
The file with the path Icon.png cannot be packaged unless the descriptor field application.icon.image57x57 is set to Icon.png
Sigh. It is, isn't it? Should I set those Info.plist keys? If so, how?
2. Failing codesign verification. I apparently do not seem to grasp this whole neurotic Apple developer & distribution certificate mess. By now my Keychain Access is populated by 10 or so certificates, I have a number of .p12 files, .cer files, .mobileprovision files... I am not even going to repeat my steps, because they apparently do not work. According to Application Loader, "the signature is invalid, contains disallowed entitlements, or was not signed with an iPhone Distribution Certificate."
Please sign in to leave a comment.
Does anyone have any ideas? Or should I install Flash Builder?
Shame on me, I haven't submitted any AIR mobile application to the Apple AppStore. So I'm afraid I can't provide more detailed information than Apple's and Adobe's help. What I know for sure is that the whole development/packaging/submission procedure is not tied to any IDE. All can be done from command line. Actually all IDE does regarding AIR mobile packaging is that it allows to fill UI forms instead of composing command line. Both FB and IntelliJ IDEA use adt tool from Flex SDK to package your application.
Just to let you know I finally have it working.
Turns out I forgot a tiny step somewhere during the key generation process.
I recommend to do what I did:
1. Follow EXACTLY what is written here: http://www.adobe.com/devnet/air/articles/packaging-air-apps-ios.html.
2. If you fail, start ALL OVER again; I tried fixing a mistake by not doing that, starting at a seemingly logical step in the middle after fixing an error, but it does not work.
3. Use Mac OS Keychain to generate all the key stuff. I tried the Windows OpenSSL approach, and while it may work, it didn't in my case for some reason (probably my error), and I am sure the Mac one worked. You can use a virtual Mac with VMWare.
4. Ignore ANY Application Builder errors as long as the codesign error appears; I have seen quite many, but they all disappeared once the codesigning worked.
See my solution, and thanks Alexander!
Great!
Indeed, generated app descriptor is only for quick start, any real-size app requires customization.
Blog post would be great, please share a link if you write it.
Hi Alexander,
My suggestions can be found here:
http://devnet.jetbrains.net/thread/436620?tstart=0
Best! Steven