jay jay - 12 days ago 7
Android Question

Programatically trigger app update from google play


  1. Once an update to app is submitted in google play developer console and the app is visible to all users, how much time would it take for any device to pick the update ? (Assuming active internet wifi connection is throughout the day and auto-update is on for this app)

  2. Can I programatically initiate a request to google play store regarding the update WITHOUT ANY USER PROMPT OR ANY INTERACTION? (Assuming no new permissions are requested while updating). If so, please suggest how.



Other information: My app is designed for digital signage using android boxes. App is launched on startup, occupies the screen. There will not be any sort of user interaction directly with the app during its lifetime.

jay jay
Answer
  1. Usually update is installed within 24 hours, provided the user maintains active connection with internet and sufficient battery. Android boxes do not have any battery, so automatic updates via google play (without any user interaction) are not reliable.

  2. Use this code for issuing auto update without playstore.

Add this permission: <uses-permission android:name="android.permission.ACCESS_SUPERUSER" />

Use the following function:

public static void installAPK(String filename) {
    File file = new File(filename);
    if (file.exists()) {
            Runtime.getRuntime().exec("chmod 777 " + filename);
            String command;
            command = "pm install -r " + filename;
            Process proc = Runtime.getRuntime().exec(new String[]{"su", "-c", command});
            proc.waitFor();
        }
}

Note: This would work only if you are not requesting any extra permissions for the app since last install.

Comments