我想确定用户最初从 Google Play 商店购买的我的 Android 应用的哪个版本。我需要这些信息来帮助支持从付费应用模型到免费增值模型的转变。
在 iOS7 及更高版本中,您可以通过使用[NSBundle appStoreReceiptURL]
which 返回可检查的 App Store 收据的 URL 来执行此操作。
Google API 中是否有等价物?
我想确定用户最初从 Google Play 商店购买的我的 Android 应用的哪个版本。我需要这些信息来帮助支持从付费应用模型到免费增值模型的转变。
在 iOS7 及更高版本中,您可以通过使用[NSBundle appStoreReceiptURL]
which 返回可检查的 App Store 收据的 URL 来执行此操作。
Google API 中是否有等价物?
您可以通过使用获取应用程序首次安装的时间和日期
long installTime = context.getPackageManager()
.getPackageInfo("com.some.package.name", 0)
.firstInstallTime;
和版本_
PackageInfo pInfo = getPackageManager().getPackageInfo(getPackageName(), 0);
version = pInfo.versionName;
不幸的是,每当卸载并重新安装应用程序时,此日期都会重置。
如果你和
PackageManager pm = context.getPackageManager();
ApplicationInfo appInfo = pm.getApplicationInfo("app.package.name", 0);
String appFile = appInfo.sourceDir;
long installed = new File(appFile).lastModified();
您还将找到应用程序的安装日期,但每次更新包时返回的时间都会改变。
一个解决方案可能是您的应用程序的在线数据库,您可以user's ID
使用AccountPicker存储每个数据库,使用first-time-install
上述方法并在login时使用它们。您还可以使用App Licensing Service。
http://developer.android.com/reference/android/content/pm/PackageInfo.html#firstInstallTime