有什么方法可以检测到在 android.xml 中安装的应用程序的先前版本。
例如,我有一个 android 应用程序。在这个 android 应用程序的早期版本中,我使用了自动生成的 UUID。现在我们在该应用程序的下一个版本中进行了更改,并在 UUID 的位置使用 ANDROID_ID。现在假设用户将应用程序从旧版本升级到新版本,在这种情况下,我想检测手机上是否安装了以前版本的应用程序,以及是否安装了以前安装的应用程序的版本名称。
任何帮助将不胜感激
有什么方法可以检测到在 android.xml 中安装的应用程序的先前版本。
例如,我有一个 android 应用程序。在这个 android 应用程序的早期版本中,我使用了自动生成的 UUID。现在我们在该应用程序的下一个版本中进行了更改,并在 UUID 的位置使用 ANDROID_ID。现在假设用户将应用程序从旧版本升级到新版本,在这种情况下,我想检测手机上是否安装了以前版本的应用程序,以及是否安装了以前安装的应用程序的版本名称。
任何帮助将不胜感激
由于以前的开发人员没有更新版本名称,您可能会使用应用程序的最后更新时间。如果它比要求的旧,则更新它。
PackageInfo 类具有 lastUpdateTime 属性。在这里如何使用它:
private Date getLastUpdateTime() {
PackageInfo pi;
try {
pi = getPackageManager().getPackageInfo(getPackageName(), 0);
Date resultdate = new Date(pi.lastUpdateTime);
return resultdate;
} catch (final NameNotFoundException e) {
return null;
}
}
如果您的应用程序已更新。您的旧版本已被替换。但是共享偏好必须保留(如果用户没有清除应用数据)。
检查您是否可以从共享首选项中读取 UUID YES 新版本 NO 旧版本。因此,您可以大致检测到安装的版本。