强制用户更新的最佳方式(移动应用程序)

时间:2014-04-10 10:03:11

标签: android sqlite cordova

我一直在考虑一种实现系统的方法,该系统会强制用户更新应用程序,就像WhatsApp当前正在做的那样。

This is what I want to achieve...WhatsApp的情况下,当应用程序在应用程序将在几天内到期的给定时间内启动时,将通知您,用户应在当前应用程序到期之前更新。如果给定日期到期,应用程序将启动,但您无法访问您的消息。

This is what I am thinking so far.. 我正在考虑使用SQLite实现这个场景,也就是说,应用程序将每周两次联系服务器,通过比较服务器上的版本号与手机中SQLite数据库中存储的版本号来检查是否有新版本。如果应用程序过期,倒计时应初始化并打算使用手机本地时间启动此操作,当给定天数用尽时,应用程序将拒绝显示应用​​程序的主页面。

Potential problem of the proposed system 由于我正在考虑使用手机本地时间,因此我预见到应用程序用户故意擦除应用程序cache的问题,这意味着倒计时将不得不重新开始计数。为了能够避免这个问题,我想到使用加密文件存储剩余的天数,即使倒计时被重新初始化,它也会回退到加密文件中剩余的天数。

注意:我使用PhoneGap作为我的应用程序。

这就是我的想法,我不知道是否有更好的想法来实现这一目标,如果您对如何实现这一目标有更好的了解,请与我分享。

由于

1 个答案:

答案 0 :(得分:0)

您无法控制用户设备上发生的情况。而且,总的来说,这是个坏主意。任何缓存,任何数据库,任何文件都可以擦除。所以没有具体的答案,这取决于这种更新政策的最初原因:

  1. 如果应用已过时,您的应用就无法运作。例如,由于您更新了支持的API,并且您不想支持多个版本的API。然后只是总是(每次启动应用程序)比较版本。如果设备已连接到互联网,并且设备上没有关于上一版本的信息,则只需向用户说明:App will not work until you update if

  2. 如果您的应用可以正常运行但不可取,那么我建议您授权用户决定是否更新自己的应用。