Creating an app store submission file

The biggest hurdle 'that you need to overcome in order to make a version of your app that can be submitted to app stores is acquiring a distribution certificate. The process is quicker for Android, but does involve some typing to be done in the command line, and there is a slight difference if you are on Windows rather than Mac. The iOS process has many steps to it, but at least they don't involve typing cryptic commands. We'll look at Android first.

Finding and using the Android Keytool application

One of the thing that was installed when you added the Java Development Kit is a tool to make a "keystore" file, which is a self-assigned certificate. It's this tool that is used to create the certificate you'll need in order to distribute an Android app.

On Mac, you don't need to find this application, you can simply type the command in the Terminal and you'll find the tool. On Windows, you need to navigate to the folder where Keytool is located first. Before getting that far, you have to first open the command line as Administrator.

On Windows, the CMD application is found at C:WindowsSystem32. Go to that directory in Windows Explorer, right-click on the file, and select Run as Administrator. The Keytool application will be in the bin folder of the Java JDK directory. Once you are at Command Prompt, change directories to get to that location, which will be something like C:Program FilesJavajdkx.x.x_xxin, where the jdkx.x.x_xx part would actually be the version of the JDK that you have installed. You should be able to get all the way there with a line like the following, where cd is the command used to change directories:

C:> cd Program FilesJavajdk1.7.0_01in

On Mac, you will use Terminal, which is located in /Application/Utilites. Just open Terminal and you'll immediately be able to use the Keytool application.

In either case, you will now type a relatively short line and then answer the various questions that appear. For better understanding of what is going on, visit:

http://developer.android.com/guide/publishing/app-signing.html

For our purpose, we'll just type in the right command, and all should go well, even if we don't understand what we typed!

This is the line that you need to type, changing the keystore and alias names to match the names you wish to use for this certificate:

keytool -genkey -v -keystore my-release-key.keystore
-alias alias_name -keyalg RSA -keysize 2048 -validity 10000

When you press the Enter or Return key, you will start to see a series of questions starting with the password you wish to use for the keystore. Further questions will ask for your full name, details about your company, city, and country. It's a set of data that can be encoded into a keystore that is unique and has enough accurate information through which a user can decide whether to trust the certificate.

When the tool is finished, you will have the keystore file that LiveCode requires. It will be easily available in your home folder on Mac and somewhat buried in the JDK bin folder on Windows.

Go to the Basic Application Settings of the Standalone Application Settings of your Mainstack and navigate to the file from the Key entry. Once chosen, this section will look like this:

Finding and using the Android Keytool application

If you have chosen your icons and splash screen and requirements and permissions, you should be able to build a version of the APK file that can be uploaded to app stores.

Creating a distribution certificate for iOS

As mentioned previously, there is no command line typing involved to get a distribution certificate for iOS, but there are a lot of steps involved. The First place to visit to get the certificate is the iOS Developer Portal to make sure that you have set up a dedicated App ID and Provisioning file for this particular app.

The following screenshot represents the steps taken to get a certificate and profile for an app that is to be named EasyReminder, which is the reminder app that we made earlier.

In the App IDs part of the portal, there is a + button that adds a new app ID to your account and asks for a name for that ID. Here, you can see that the ID is given the name EasyReminder and a Bundle Identifier com.gerdeen.easyreminder. This needs to match the Internal App ID set in LiveCode. If you are not member of multiple development teams, you will not see the App ID Prefix shown in the following screenshot:

Creating a distribution certificate for iOS

Now that there is an App ID, it can be used to set up a Distribution Provisioning Profile in the Provisioning section. If you haven't yet made a Distribution Certificate, you will see a button telling you to make one. Clicking on that button will present you a question about what kind of certificate you want to make:

Creating a distribution certificate for iOS

Clicking on the Continue button takes you to a long description of how you have to make a request to the certificate authority and how to upload a file that Keychain Access generates. When you encounter this situation, carefully follow the steps shown in the following screenshot:

Creating a distribution certificate for iOS

After you have uploaded that certificate request file, you will be able to make a distribution profile that uses the dedicated App ID and the distribution certificate. The final entry will look like this, and you can use the Download button to get a local copy of the provisioning file:

Creating a distribution certificate for iOS

You now have the file that LiveCode requires, only you don't select it in the LiveCode settings. Instead, you double-click on the file and it installs itself using Xcode. Once it is in Xcode, you can then select it from the Profile menu in the Basic Application Settings in LiveCode:

Creating a distribution certificate for iOS

As with Android, make sure to add icons, splash screens, set requirements, and so on and you will be able to save an APP file, ready to go, to the iOS App Store.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset