gpt4 book ai didi

android - 以编程方式暂时禁用自动更新

转载 作者:塔克拉玛干 更新时间:2023-11-02 20:13:03 24 4
gpt4 key购买 nike

我有一个自行车电脑应用程序,可以在用户骑行时记录数据。我有一个用户报告了一个我没有考虑过的问题。他外出进行了长途骑行(100 多英里),但在外出并记录数据时,该应用程序通过 Google Plays 自动更新进行了更新。不幸的是,这在录制过程中终止了应用程序,用户丢失了数据,直到他们发现发生了什么并重新启动了应用程序。

理想情况下,我希望能够在应用程序记录数据时以编程方式停止自动更新。我所有的研究都表明这是不可能的,但我可能错过了一些东西,所以有人知道这样做的方法吗?

如果没有解决方案,我能做的最好的事情就是建议用户在 Play 应用程序中启用仅通过 wifi 更新 选项,这在这种情况下会有所帮助。不幸的是,我的应用程序的关键点之一是它将使用 ANT+ 传感器记录室内 session ,因此我有很多人在 wifi Activity 时使用它。

编辑

昨晚我设法做了实验,看看自己会发生什么。我有一个应用程序在后台进行数据记录,然后将一个新版本推送到 Google Play。不幸的是,当我不得不在 10 小时后离开时,它并没有完全自动更新,但我打开了 Play 商店应用程序,它发现更新没有开始自动更新,但我强制了它。下载和安装新版本的行为终止了正在进行的操作。在我使用通知转到新版本之前它已经死了。

最佳答案

正如您自己所说,您不能按照自己的要求去做。您可以通过每次更新时更改权限来绕过它。然后将以常规方式提示用户。

我不确定正在运行的自动更新应用程序的“生命周期”。但是我在某个地方读到不是重新安装而是重新启动导致它崩溃的应用程序。如果是这种情况,您可以设置一个标志,指示用户当前正在登录,然后在重新启动时恢复登录。但同样,我们需要更多地了解正在运行的 Activity/应用程序的内部工作原理并获得自动更新(实际上认为这不可能发生)。

编辑

根据您的发现,我会说您必须处理应用程序在 onDestroy 等中关闭或/并确保您持久保存所有内容。然后您可能需要有 2 个应用程序,其中 1 个监听另一个正在重新安装的应用程序,当发生这种情况时,它会再次启动它(there is an interesting discussion here)。如果您的目标是 api >= 12,那么广播操作 ACTION_MY_PACKAGE_REPLACED可能也有兴趣。

关于android - 以编程方式暂时禁用自动更新,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13268557/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com