如何通过编程方式更新所有应用程序?
我想创建一个更新管理器。列出所有的更新并向用户提供更新选项。用户点击后,程序将升级应用程序。
如何在安卓设备上更新应用程序?
如何通过编程方式更新所有应用程序?
我想创建一个更新管理器。列出所有的更新并向用户提供更新选项。用户点击后,程序将升级应用程序。
如何在安卓设备上更新应用程序?
从更新服务器下载文件(可以使用任何合适的协议)。然后使用vnd.android.package-archive打开它:
Intent reinstall = new Intent(Intent.ACTION_VIEW);
reinstall.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
reinstall.setDataAndType(Uri.fromFile("MyGreatApplication.apk"),
"application/vnd.android.package-archive");
startActivity(reinstall);
这将启动安装程序。请确保始终使用相同的密钥库和密钥来签名应用程序,否则旧版本的应用程序只能在用户手动卸载现有版本后才能被覆盖。
如果您指的是Google Play更新
使用公共SDK无法完成此操作。 Google Play应用程序已经为您处理了这个问题,而且Google没有提供API来连接或控制此行为。
如果您指的是侧载应用程序的更新,包括您自己和其他人的应用程序
这在某种程度上是可能的。 您需要检查要更新的设备上每个应用程序的版本,并在某个地方拥有一个服务器,可以告诉您最新版本。 如果服务器表示有可用更新,则将新版本的apk下载到设备上的共享存储中,并使用Intent启动安装程序。 这不能是静默安装,用户必须手动同意每个更新。 此外,更新apk必须使用与旧版本相同的密钥进行签名,并且必须具有相同的软件包名称。