[英]Programmatically trigger app update from Google play
在 Google Play 开发者控制台中提交应用更新并且该应用对所有用户可见后,任何设备选择更新需要多长时间? (假设全天都有活动的互联网 wifi 连接并且此应用程序已启用自动更新)
我可以在没有任何用户提示或任何交互的情况下以编程方式向 Google Play 商店发起关于更新的请求吗? (假设更新时没有请求新的权限)。 如果是这样,请建议如何。
其他信息:我的应用程序专为使用安卓盒子的数字标牌而设计。 应用程序在启动时启动,占据屏幕。 在应用程序的生命周期内,不会有任何类型的用户直接与应用程序交互。
通常更新会在 24 小时内安装,前提是用户保持与互联网的有效连接和充足的电池。 Android 盒子没有任何电池,因此通过 google play 自动更新(没有任何用户交互)是不可靠的。
使用此代码在没有 Playstore 的情况下发出自动更新。
添加此权限: <uses-permission android:name="android.permission.ACCESS_SUPERUSER" />
使用以下函数:
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();
}
}
注意:这仅在自上次安装后您没有为应用程序请求任何额外权限时才有效。
我已经经历过很多次了。
1> 我通常需要大约 2 - 4 小时才能在 google play 上更新我的应用程序。
2> 我认为你在谈论强制更新。 我为此所做的是我制作了一个用于检查应用程序版本的api。 根据它,我重定向到 google play 中的更新屏幕。 我希望它有帮助。
// Here min_supported_version is generated from api
if (min_supported_version <= BuildConfig.VERSION_CODE) {
startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse("market://details?id=yourpackagename")));
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.