如何在没有 Google Play 或用户交互的情况下自动更新 Android 应用程序

kne*_*los 5 android apk android-install-apk android-update-app

我正在开发一个将在商店(例如餐厅)的平板电脑设备上运行的应用程序。该设备没有 Google Play 并且已获得 root 权限。如何在完全无需用户交互的情况下自动安装应用程序更新?

澄清一下,检查我的服务器上托管的 APK 的新版本并下载它不是这个问题的一部分,只有“静默”更新部分是。

小智 2

首先,您的设备需要root。看来这已经为你完成了。现在您所要做的就是让您的应用程序检查是否有新版本的 APK 可用。如果是这样,请在后台启动一项服务来下载所需的 APK 并运行此代码以静默安装它。

public static void InstallAPK(String filename){
    File file = new File(filename); 
    if(file.exists()){
        try {   
            String command;
            command = "adb install -r " + filename;
            Process proc = Runtime.getRuntime().exec(new String[] { "su", "-c", command });
            proc.waitFor();
        } catch (Exception e) {
        e.printStackTrace();
        }
     }
  }
Run Code Online (Sandbox Code Playgroud)

您基本上可以修改 ABD 命令来执行您想要的任何操作。请注意,取得 root 权限的设备可能很危险并导致安全漏洞。