data scientist and machine learning engineer
I recently launched a React Native app called Origin Spots on both App Stores. This post represents a checklist for appstore launch or at a new release.
Think about adding localization ahead of time. Adding Localization after the app is already written is more complicated: it takes a day's work to add one language for a dozen screens.
Make sure the iOS permissions explain very well what they ask for, otherwise the app will be rejected. An additional text for NSCameraUsageDescription could be: 'This will enable you to take photos with the camera to use in the app.' Android does not require further exlaining.
Show somewhere in the app UI, maybe in the settings section, the build and release version of the user's current app version. So if a user reports a bug, you would know what version they have problems on.
Double check and if it's the case, change the release version. The place to do this in Android Studio is in the file android/app/build.gradle inside the tag android / default config; in Xcode is in Settings.
Add 'force-cache' parameter in Image tags, they will save in cache images in iOS so the user does not downlead multiple times an image.
Add Splash Screen / Launch Screen.
If the app has login with Facebook, make sure the app is in Live mode on the facebook developer website. This will not be detected in the app release in iOS, but only in release mode in Android. You don't want to hear from users that the login is not working!
Test the app works on multiple device sizes and operating systems. On iOS this can be done in the simulator, on Android you would need to ask friends for devices. There is also the Firebase Test Lab . I have encountered problems on only some devices than my own.
UI Test that the app behaves correctly if a user does not allow any of the requested permissions.
User test with other users the app first for a couple days - a week. Errors will appear that you as a developer did not catch.
Test the release version on the app for Android, before sending the signed apk to the store. Errors will appear only at running the app - like missing signed key.
Add Crashlytics from Fabric to detect crashes.
Add analytics. Example solutions are Firebase or Fabric (for both Android and iOS).
Make sure on Google Play Store the app is not running on tablets if it is not designed to do so.
Back up the database.
Export Compliance Information to Apple by end of year.
Verify login with Facebook works.
Let me know if you think a future post with changes at new releases would be useful.
Posted on August 30, 2018