我正在开发一个很可能预装在设备上的应用程序。它也将在Google Play上提供。由于Google Play不会通知用户有关更新的信息,因此是否有办法更新那些未通过Google Play下载的实例。
我曾想过,如此处建议的那样,尝试定期与我的网站联系,并在有可用更新时下载。
有没有一种方法可以自动甚至静默地进行此更新,从而使用户无需执行任何操作(例如手动运行程序包)。或者,当我的网站显示有可用更新时,即使未通过Market安装,也可以通过Google Play向用户提供更新(编辑:此Google Play选项会更可取,因为用户不必勾选“允许安装非市场来源”。)
我遇到了同样的问题,现在我在应用程序启动时检查配置xml中是否有新版本。
我将实际版本与configuration.xml的标记“ <app_version> 1.1 </ app_version>”进行比较,如果较低,我会与自定义AlertDialog询问用户是否继续进行升级
Intent intent = new Intent(Intent.ACTION_VIEW ,Uri.parse(myapk_link));
startActivity(intent);
下载后,用户必须手动运行软件包。
如果你从Android市场选择更新,请使用:
Intent intent = new Intent(Intent.ACTION_VIEW ,Uri.parse("market://details?id=com.package.name"));
startActivity(intent);
com.package.name
必须是你应用的“包装”
或者
Intent intent = new Intent(Intent.ACTION_VIEW ,Uri.parse("market://search?q=" + APP_NAME));
startActivity(intent);
这几乎就是我的想法。对于用户来说仍然有点复杂...谢谢
您如何与GooglePlay版本进行比较。男人,将不胜感激
我要做的是在互联网上拥有最新版本,例如yourdomain.com/lastversion.txt。当应用程序启动时,它会执行一个指向该最新版本的url的http获取,并与该应用程序版本进行比较,如果远程版本更高,那么我将启动该意图。因此,在您的版本获得Google Play批准后,我会使用新发布的版本更新yourdomain.com/lastversion.txt内容。
以这种方式使用用户 developer.android.com/guide/app-bundle/in-app-updates