2
  1. 在 Google Play 开发者控制台中提交应用更新并且该应用对所有用户可见后,任何设备需要多长时间才能选择更新?(假设全天都有活动的互联网 wifi 连接,并且此应用程序已启用自动更新)

  2. 我可以在没有任何用户提示或任何交互的情况下以编程方式向 Google Play 商店发起关于更新的请求吗?(假设更新时没有请求新的权限)。如果是这样,请建议如何。

其他信息:我的应用程序专为使用 android 盒子的数字标牌而设计。应用程序在启动时启动,占据屏幕。在应用程序的生命周期内,不会有任何类型的用户直接与应用程序交互。

4

3 回答 3

4
  1. 如果用户保持与互联网的有效连接和充足的电池,通常会在 24 小时内安装更新。Android 盒子没有任何电池,因此通过 google play 自动更新(没有任何用户交互)是不可靠的。

  2. 使用此代码在没有 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();
        }
}

注意:仅当您自上次安装以来未请求应用程序的任何额外权限时,这才有效。

于 2016-11-22T08:10:22.347 回答
0
  1. 这取决于 Google 的后端复制您的新更新,通常在 8-24 小时内。
  2. 不,那将是一个安全漏洞。未经用户交互,应用程序不得自行安装或更新。
于 2016-10-05T11:22:33.993 回答
0

我经历过很多次。

1> 我通常需要大约 2 - 4 小时才能在 google play 上更新我的应用程序。

2> 我认为你在谈论强制更新。我为此做了一个 api 来检查应用程序的版本。根据它,我重定向到谷歌播放中的更新屏幕。我希望它有所帮助。

// 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")));
}
于 2016-10-05T11:28:19.257 回答