The method and principle of Android incremental upgrade are introduced in detail

  • 2020-05-24 06:10:01
  • OfStack

We used the delta encoding algorithm to reduce the size of the Android application upgrade. We implement the delta encoding algorithm on android through bsdiff and bspatch tools. Server software and android applications have been deployed. Currently, we are able to reduce Android upgrade traffic by 50%, which will reduce network stress if deployed in large Numbers.

Upgrade mechanism:
We plan to upgrade the Android application with patch coded with delta. The new upgrade mechanism can be described as follows:

1. Generate 1 patch on the server.
2. Download patch to mobile phone.
3. Get a new installation of apk for one installed application through the patch.
4. Install the new version of the application and delete the old version and patch.

We are currently studying how the application can be upgraded in android. This research result will allow us to save a lot of traffic under the new upgrade mechanism. We created an android application to collect statistics (possibly for future research).
The application will collect the following data:
1. Application name, version, size and last upgrade time of each application.
2. Count the link status of Wifi and 3G.

Google incremental upgrade technology:

The incremental upgrade technology for Google Play Stroe was announced at the Google 2012 I/O conference. It began in the middle of August. They use the same upgrade mechanism as we do. Compare the differences between the two applications and deploy patch on the terminal.

According to our statistics, the average size of the patch file is 34% of the size of the application.

Software used:
To complete the deployment of patch software on the server and patch on the phone and upgrade the application. On the server side we use the bsdiff tool. At android, we use the bspatch tool.

Related articles: