不使用Playstore的多台设备上的远程更新应用

时间:2013-02-26 21:26:27

标签: android ota automatic-updates

我正在尝试找到一个解决方案,将APK远程更新为80个平板电脑。这应该优选地尽可能自动化,并且如果这可以在后台完全发生而没有任何用户输入那么好。基本上是Playstore目前做的事情,我很遗憾无法使用。

在没有设备生根的情况下,这样的事情是否可行?有关图书馆/服务的任何建议吗?

我正在运行Android 4.1.1,它们都将连接到Wi-Fi。

2 个答案:

答案 0 :(得分:4)

您可以将新的APK文件下载到SD卡,然后调用它来安装它:

Intent shareIntent = new Intent(Intent.ACTION_VIEW);
shareIntent.setDataAndType(Uri.fromFile(new File("path-to-APK-file")),
        "application/vnd.android.package-archive");

try {
    context.startActivity(shareIntent);
} catch (Throwable t) {
    // handle the exception here
}

只有一件事不是自动的:最后一步。系统将要求用户确认安装。

关于APK文件的MIME类型,这是wiki page

答案 1 :(得分:1)

不,如果没有root或设备的签名密钥至少作为标准的Android APK更新,在后台是不可能的。我可以设想类似于此工作的唯一半合理方式是让您的应用程序始终检查/下载使用类加载器加载的代码。这将是一项重要的工作,并不容易。

但是,如果你愿意接受一些用户互动,那真的不应该那么难(虽然它仍然需要一些基础设施建设)。保留一个返回最新版本号的Web服务,与当前版本号进行比较,并根据需要下载新的APK。许多SO问题已涵盖Installing an APK programmatically