<<

Posting Adobe AIR 3 app to Mac

Apple has changed Apple requirements and methodologies and that resulted in changes to the AIR run time itself. This document explains how to post updated AIR 3 applications to the Mac App store.

Steps to Post an AIR 3 Application to the Mac App Store

Packaging Your App Note: Posting an application to the Mac App Store requires manual steps. You need to have a Mac developer account with Apple. Package your app with a captive runtime; the Mac App Store only accepts self-contained apps and will not allow apps that use the shared AIR runtime. After packaging your .app , manually open your Info.plist file in your favorite xml editor and add an LSApplicationCategoryType entry. The list of possible values is available here: https://developer.apple.com/devcenter/mac/documents/submitting.html . Also add a 512x512 icon to your Icon.icns file. (Currently the adt tool does not support icons of this size on Mac.) You can use Icon (available with the tools) to resize. Apple places several restrictions to post on the Mac App Store. This includes: The locations an app can write to The APIs an app can use (non-public APIs arenot allowed) And the resources an app is allowed to use. The AIR runtime is being updated to meet these requirements. There are, however, some restrictions that will not be circumvented. To avoid rejection, your AIR app should avoid these restrictions. See ActionScript APIs and entitlements for a complete list of these restrictions. WebKit uses some non-public APIs that are not allowed on the Mac App Store. So you cannot use StageWebView, HTMLLoader, or any class in the flash.html in your app. You will also need to manually remove WebKit.dylib and Flash Player.plugin from the Adobe AIR.framework/Resources subtree inside your app bundle. Additionally, if you are interested in decreasing the size of your app and you are not using any DRM functionality, you can manually remove Adobe AIR.vch, adobecp.plugin, adobecp.vch, and AdobeCP15.plugin from the Adobe AIR.framework/Resources subtree inside your app bundle. It is recommended that you use Mac OS 10.7 to upload your app. There is a bug in Mac OS 10.6 that prevents Apple’s Application Loader from successfully uploading your app with the AIR runtime. To from Mac OS 10.6, there is a workaround: Delete the “Resources” symbolic link in the AIR framework folder and create a true folder called “Resources”. Copy AIR’s Info.plist file (from Versions/1.0/Resources) into this new folder. Modify the original Info.plist file (inside Versions/1.0/Resources) by renaming the bundle id to com.adobe.AIR1.

Installing Your App Once your app package is ready, launch Terminal, and do the following:

1. Install your Developer Application and Developer Installer certificates on the . Use Apple's Developer Certificate Utility to create and install the certificates. The developer certificates refer to the "WWDR Intermediate Certificate" and to the "Apple Inc. Root Certificate". These certificates are not required to be in the Keychain to sign an app. If needed, they can be obtained from Apple Root Certification Authority . 2. Sign your app with your Mac Application account certificate. textcodesign ­f ­s "3rd Party Mac Developer Application: XXX" ­­ entitlements ZZZ.entitlements YYY.app where XXX is the name on your cert, YYY is the name of your app, and ZZZ is an entitlements file. The entitlements file provides the list or resources and features the app is allowed to access. See the Entitlement Key Reference for the entitlements file format.

3. Build a .pkg for your app that is signed with your Mac Installer account certificate. productbuild ­­component YYY.app /Applications ­­sign "3rd Party Mac Developer Installer: XXX" YYY.pkg If you are missing the productbuild tool, make sure you have xcode 3.2.6 or above installed. 4. Delete or zip the .app file after productbuild has created the .pkg (otherwise the installer test doesn't work). 5. Install your app as if it came from the store. sudo installer ­store ­pkg YYY.pkg ­target / 6. Verify that your app is installed in Applications and is launchable. You are now ready to upload your app. Before doing so, you must create meta-data for your app on iTunes Connect. Log in using your Apple ID. Follow the Manage Your Applications link. And click the Add New App button to create the meta-data.

Then, use Application Loader to upload the app for review. (Application Loader is part of Xcode tools, versions 3.2.6 and above. Application Loader is also available as a standalone download). You will find out right away if your application bundle is well formed, but it will take a few days to find out if Apple approved it or not. In particular, if you are using a self-signed certificate you may get the following warning from iTunes Connect: We have discovered one or more issues with your recent binary submission for "YYY". Your app has proceeded to review, but the following issues should be corrected in your submission: Invalid Signature - the nested app bundle (YYY.app/Contents/Frameworks/Adobe AIR.framework) is not signed, the signature is invalid, or it is not signed with an Apple submission certificate. Refer to the Code Signing and Application Sandboxing Guide for more information.

Twitter™ and Facebook posts are not covered under the terms of Creative Commons.

Legal Notices | Online Privacy Policy