The appstore upload process is still a mystery to most people with unclear approval rules by Apple and Google, questions around packaging and promotion and how to get well positioned on the appstore. Here’s a checklist and key tips for uploading your iPhone, Android or Windows Phone apps which may also be applicable for other appstores.
1. Objectives & Planning
Start by putting together a timeplan for the upload submission process including account registration, device support, content and graphical assets, appstores to include and more. It may actually take a couple of months to get everything prepared so set a date for launch and start planning backwards when you need to start.
2. Appstore account creation
Make sure that you have an account with the company name and information you want. Registring a new account or making changes to an existing account can take a very long time. For Android there are 100s of alternative appstores including the major device manufacturers such as LG, Huawei, HTC, LG, ZTE as well as operator appstores in China by China Mobile, China Telecom, etc and independent appstores including Softonic, Getjar, Mobango, Mobile9 and others.
3. App naming
Think about the name of the app from day one. What keywords would you use to search for your app? Consider including keywords in the app description. Check that there isn’t already an app with the same or a similar name on the appstore that could prevent your app from being approved. Apple is extremely strict about this and Google is getting tougher on app names.
4. App description
Both Apple and Google have been generous about the length of the app description (4000 characters for iOS). Take advantage of this.
Up to 4000 characters for iOS. This can be edited any time, even after your app is approved.
Note that you are not allowed to promote the Android app on iTunes or vice versa.
You may also want to use the app description to provide a change log for your app so that people can see how it has evolved over time.
5. What’s new
Always include release notes when launching a new version of your app. Use customer friendly language and promote each update. If it’s just a bug fix release then promote it as “We listen to your feedback and constantly improve. This update improves performance and reliability and removes several reported bugs.”
6. App category
The app category can be critical for your app since it may influence the likelihood of getting your app into e.g. the top 20 most downloaded apps or get it featured. Consider what is the most fitting category as well as which category your app is most likely to succeed in.
7. Keywords / Tags
Up to 100 characters (iTunes); separate multiple keywords with commas. Keywords can’t be changed after the app is in review.
8. Graphical assets
After the app name this is the most important thing. Make sure that you have planned for design resources to create great looking assets including app icons, the maximum amount of screenshots for reach device type that your app supports. Also consider editing the screenshots to better promote the app.
Is your app internaional? Set default language.
If you plan to roll out the app to multiple countries then use a standard tool such as Ricotta to edit the strings.xml file
10. Installation Location (Android)
A lot of Android devices have limited device memory so make sure that the app can be installed on a memory card and ideally set this as the preferred option with external installation (android:installLocation=”preferExternal” in the AndroidManifest.xml).
11. Version number and control
App Version Number (you probably want 1.0 here). This can’t be changed once the app is in review.
Don’t forget to increase versionCode and versionName in your manifest for Android for each new release.
Think about what to put as copyright info (for example, “2012 YourCompanyName”).
14. Support URL (required)
The web page for your app. This should include contact info for users who have questions about your app.
Marketing URL (optional) – a web page with more info for your app.
15. App Review Information
Apple now requires a name, e-mail address, and contact phone for someone who can be contacted if the App Review team has questions about your app. This info will not be published to the App Store; it’s only for internal use at Apple.
If your app is a paid app then the pricing strategy will obviously be critical. The app price can be changed at anytime so once you’ve decided on a starting price then experiment.
17. Launch date
This defaults to the current date, but you can set it to a date in the future if you like. If your app is approved before the release date you’ve set, then it won’t be available in the App Store until that date.
Launch your app at the end of the week (Thursday afternoon is usually a good time). Ironically less apps are published end of the week as fewer companies want to publish an app only 1.5 day before the week end in case there is a problem that require fixes/updates.
Consider publishing your app before having finished all features, you don’t already know what your users will want to have in the app.
Both Apple and Google have pretty good guidelines. They used to be vague and difficult to interpretare but nowadays they are pretty straight forward so go through the list before finalising your apps.
Try using Distimo for tracking your app downloads across the appstores. We also recommend using either Google analytics or Flurry as a standard for analytics. Try to get as much informations as possible, but don’t grab anything that violate the anonymous state of the customer. Don’t forget to retrieve exceptions that happen on the user side.
Add a section “send feedback” in the app app description as well as in the app wich let the user ask for feature or specify some bugs.
22. Multiple apps
If you are launching multiple apps then add a section “More apps” in your app to cross link. That’s free ads.
Be the first to rate your app with 5 stars -> that influence the future users ratings. Add a “If you like this app, please rate it” link (to your Android Market’s description ) in your app as this will get you more 5 stars.
24. Extra testing
You can never test your app enough. If your development partner doesn’t have a dedicated test team with all your target OS versions, devices and testing methodologies then consider using an external test house such as DMI.
25. Android specific
Finally a few Android specific recommendations of which some may also be applicable to other iOS:
- Don’t use too much .jar libraries, prefer library projects (optimize the code size)
- Never show the title of your app (this.requestWindowFeature(Window.FEATURE_NO_TITLE);), and consider using the fullscreen mode (this.getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);)
- Use proguard on your app (usually, you just have to add this line : proguard.config=proguard.cfg in the default.properties file) this will optimize, shrink and obfuscate your code, very useful for preventing from code thieves. You don’t have to delete any comments, there are automatically deleted at compile time
- Optimize your images to reduce app size (using Paint.NET, PNGCrush or OptiPNG)
- Optimize your layouts for most of screen sizes. You can do this by simply changing the screen size while editing a layout in eclipse.