So, you are ready to share your Android application or game to the world. Congratulations! However, before you are able to you must sign your Android application package (APK), in order to upload your app to the Android marketplace. Signed APKs are very similar to unsigned APKs. However, a signed APK also has a public-key certificate within it. The public-key serves as a fingerprint that uniquely identifies your APK and your correspondence with it. A signed APK ensures Android that future updates of your APK are authentic and comes from you, the original author. It is manner of few steps to create a signed APK in Eclipse, as seen below.
To begin, perform a right mouse click on the Eclipse project. Then select from the drop down menu Android Tools – Export Signed Application Package….
If a message box dialog appears detailing ‘Running Android Lint’ has encountered a problem. – java.lang.NullPointerException then click the OK button to exit the dialog.
Select within the file menu and preferences dialog Window-Preferences-Android-Lint Error Checking. In the following dialog box uncheck the checkbox Run full error check when exporting app and abort if fatal errors are found.
If you know why Lint is not working then please leave a comment, below. However, lets move on.
So, once again, perform a right mouse click on the Eclipse project. Then select from the drop down menu Android Tools – Export Signed Application Package…. Now, the following dialog box should appear. Click the Next button, if the project matches your desired project to be exported.
The next dialog that appears within the wizard, is where you can set up or use an existing Keystore. If this is your first app or game then you will want to create a new Keystore. However, if this is not your first app then you may want to use an existing Keystore from a previously built app.
Think about a Keystore as a treasure chest where you can lock away your keys to your apps. When you are ready to update your app, you will open the chest (use an existing Keystore) and generate a new signed APK.
The benefit of using the same Keystore for multiple signed apps will make it easier for those apps to share data on a user’s device. Android recommends this strategy for all apps/games developed by a developer or a business. However, (I recommend) if you have apps that don’t share a relationship then you may not want to store those app credentials into the same Keystore, for security purposes. (I mean think about it, if someone defeats the orc defending your one and only treasure chest, then that person now has the keys to your entire dungeon! Anyway…)
The next step within the wizard is to create the app’s key. The wizard requires an alias for the key – the apps name is usually good. The wizard also requires a password and the number of years you want your key to be valid.
The last step within the process is to set the directory where the signed APK will be created, when the Finish button in the dialog button is clicked.
Congratulations! You have created a signed APK that is now ready for the Android marketplace!
If you have any questions or comments, please leave them below.