Migrating Apps to Android O

Android O

Google has taken the development world by surprise by announcing a developer release of Android O operating system. While speculations are rife about what sweet the new Android OS will be named after, the makers have christened it Android O for the time being and are focusing on getting the developers accustomed to the changes in OS features and application development environment.

Why Migration Is Necessary?

During most Android OS changes, a few basic fixes make the application compatible with the new version. However, it has several feature and API changes that can alter the appearance and functioning of the existing Android apps. This can lead to application instability and confusion amongst the users.

Let us take a look at how existing apps should prepare to migrate to Android O, when the final version is released. The migration can be achieved in two steps, as directed by the official Android documentation.

  1. Ensure platform compatibility

In order to address the changes imposed by feature and API changes in the new version, it is required to ensure the stability of the present application build first. Applications running Android Nougat can become fully functional on the new release through a series of basic fixes:

  • Download Android O system image for your emulator. Also do that for your device along with flash installation.
  • Analyze what modules and features will be affected as a result of the feature and API changes in Android O.
  • Verify the anticipated systems by running the application on the emulator. If there are any additional changes, log them for future reference. Make sure that the complete app flow, and all use cases are covered.
  • In order to mitigated the imposed changes, make any code changes to retain the app features as-is on Android O. Compile and build the code without changing the targetSdkVersion.
  • Upload the duly signed application, while retaining the present API level that does not target this version.

It is recommended to run this application on a device running Android O and perform basic compatibility testing, before making the release available to the users.

  1. Customize your app for Android O

When your application is stabilized and compatible to run on as-is basis on Android O, it is time to evaluate how you can leverage the features and APIs provided by Android O to enhance current the user experience. Ensuring platform compatibility with Android O is a pre-requisite for this.

The following steps illustrate how to migrate to Android O through platform specific changes:

  • Android O development needs the new Android Studio 2.4 canary. Make sure that you have the required environment for starting development – the right IDE, emulator, and device.
  • Although you have already done this while ensuring compatibility, re-evaluate the areas in which your app will be affected. Plan appropriate support mechanisms to ensure stability of the build. After this, plan how to use the Android O features to your advantage in the app.
  • Make the basic code changes, and if required, make architectural changes to the application to support the new background limits and behavioral changes imposed by Android O.
  • Now, customize your app for specific changes that will run only on the new version, and make provisions for orienting your users through an in-app tutorial on updating the app. Recompile for Android O.
  • Check for any platform or third party issues arising from the recent code changes. Report incidents (if any) to the appropriate authorities. Test your application on both – emulator and device.
  • Update your target Sdk Version when you have verified the application functioning through rigorous testing.
  • Duly sign and upload the updated APK version for Android O to the Play Store.

Have ideas to share? Submit a post on iamwire

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>