Guide to Updating Your App to Android Instant Apps
The attempt to erase the borders between websites and mobile apps is still relevant. The feature implemented by Google that is called Instant Apps, intended to remove this obstacle. What if you could partially replace websites with apps? That's how this technology works. It allows users to use apps without installing them. Are you already intrigued? Let's find out what all that stuff is about.
What is Instant Apps technology?
Let's take a closer look at what Google Instant Apps technology is capable of. Instant Apps were announced at the conference Google I/O 2016. One-year later, at I/O 2017, the company officially declared that developers can start using this technology for their projects.
The concept that was realized in this technology allows programmers to develop applications that can be launched directly from Google Play without the necessity to be installed. When launching, the software written for this technology acts similarly to web apps. These apps are dynamically loaded, and after the work is completed -- they do not remain in the system. An ordinary link is enough to launch the software supporting Instant Apps.
Are you developing an Android app? Learn more about the principles of Android operating system security
Let's say you are searching for certain goods on the web by using your Android-powered smartphone or tablet. As soon as you find an attractive link in the search results and tap on it, your device will load a so-called minimal version of a full app that the website already has on Google Play. It may contain the minimum set of features like information about the product and the 'Buy' button or adopt more of a variety of features from original app.
In order to adopt your app to this technology, you should build an app with an easily detachable part that can be downloaded separately. At the same time, it is not necessary to build a new branch of code. The main thing is to call the Instant Apps Android programming interfaces to the right place. The rest is Google's magic. When the search engine decides that it is the right moment to show the app instead of a website -- it will make a query to Google Play to run the application.
Android Instant Apps example
Besides, Android Instant Apps can use the same technologies as ordinary apps that are installed on users' devices. Talking about compatibility issues, the technology supports devices with Android 4.1 and higher. In turn, they should also have the current set of Google Play services. Of course, the solution that Google provides us with does not give the full functionality of an app. Nevertheless, it allows users to dramatically save time and facilitate interaction with the Android ecosystem.
By the way, developers are willing to choose those features that will be accessible when Instant App mode is on. Moreover, you do not have to re-write the software code. It is enough to make some corrections in order to make the app run properly. With the launch of Android Studio 3.0, the company has provided mobile developers with all the necessary tools to modulate their apps. So, to get Android Instant Apps SDK you should have the version of Android Studio no lower than 3.0.
What about load time and traffic? Nowadays, a lot of websites are obese. It is not uncommon to meet a resource consuming 10MB of your users' traffic and even more sometimes. Such sizes are almost entire applications. Taking into account the fact that Instant Apps are only a part of the original app, their size tends to be smaller.
Advantages of Instant Apps technology
Probably, the main drawback of mobile apps is that they require being installed to start working with, while there is not always the right moment to download them due to slow internet connection, lack of memory on a device and other factors. Furthermore, the necessity to use this app once again may come in a few months or even not come at all.
The instantaneous loading of the most necessary parts of an app allows users to get by without downloading the full app in case they need separate features. That's convenient when you want, let's say, to order something with home delivery or rent a bike when walking around the city you are in for the first time.
Another advantage of this technology is the time of its adaptation for your project. To use Android Instant Apps, you will take you from 4 to 5 weeks to adjust this feature. The technology is also convenient because it allows users to make instant purchases with the help of Android Pay and brings the interface of the native app right to the browser.
So, the visitors of Google I/O conference were not applauding this innovation for no reasons. It seems like this technology opens up new opportunities and solves a huge amount of problems, improving the user experience.
Instant Apps: principles of work
How to use Android Instant Apps?
This technology can create great interest for projects with big web traffic, advertising models of monetization and dynamic content. For instance, entertainment portals like BuzzFeed. E-commerce can also take the advantage of this technology for their purposes.
Nowadays, it is much more convenient to use search engines like Google to reach the desired website or the page with a product, than deal with mobile navigation of a site. The current strategy of Google is understood -- they want to teach users how to use Instant Apps using the example of entertainment products, as well as provide e-commerce services with a higher in-app conversion to boost their businesses.
Are you looking for new projects? Discover 5 hot Android development trends to be ready for new tasks
However, for entrepreneurs who own an app in the utility, productivity or games category, this feature will probably not bring additional opportunities. That's because the perspectives of this technology's integration into a business process or some distribution channel are blurry at the moment.
So, Instant Apps can serve as a good way to increase the conversion of resources that contain dynamic content, be it advertising or goods selling.
How can you get your app ready?
The technology is already available to all developers. However, the official Android blog has outlined the steps that should be taken long before the Android Instant Apps release date. Underneath you can see some of them in a nutshell:
- Get rid of all the unnecessary garbage such as unused components & libraries, and unnecessary dependencies on third-party developers. Having conducted such a cleaning, you reduce the size of your app, as well as improve its functionality. You can learn how to do it in the Reducing APK size guide.
- Add the support of URL navigation. Android Instant Apps automatically process web links by means of App Links. This feature was presented in Android 6.0 and its support is a must in order URL navigation could function properly.
- Conduct refactoring of your app if it is necessary. The app should be structured into modules that could be referred to by the URL and of a size no bigger than 4MB. The apps above 4MB should be divided into smaller modules that could be loaded and launched by the URL navigation. For example, the modules of an e-commerce app can be divided into the search, product information etc.
Learn about the latest news presented at Google I/O 2017 conference in our related article
- Realize runtime permissions that also were added to Android 6.0. They are requested not during the installation process, but when the app is running. You can read more about Requesting Permissions During Runtime.
- Add the support of Smart Lock if the users have to login in the app.
- Determine what features will not be supported by the app when the Android Instant Apps mode is turned on. Single out such features and put them into a separate module that can be included in the installed app only.
Modules in Instant Apps
Tools for Instant Apps development
To start your work with Instant Apps, you have to get several new tools:
- Android Studio 3.0 that contains a plethora of new features, as well as Instant Apps development SDK for instant usage of apps.
- Gradle 4.0 that among all the other improvements have a new configuration of dependencies you can use. It is worth singling out that the compilation configuration is outdated in Gradle 3.4 in favor of API and implementation. These configurations are used to help you to control which dependencies you represent as a part of your open API.
- Google has also collected some utilities. For example, the plugin that contains several useful static methods that help in checking whether users interact with your instant or installed app versions, as well as allow to request users for a system dialog.
Of course, it's too early to panic and scream that Google is killing the web. Since smartphones are not yet finished changing the usual technological landscape, and Instant Apps is not the last manifestation of this process.