是否有任何android api可以获取有关购买应用程序的信息?我不会谈论应用内购买。只是简单的APP购买。
我需要任何唯一的标识符,例如交易ID或类似的东西。
答案 0 :(得分:1)
根据我对问题的理解,您希望获取应用购买者的信息,或者您想要检查特定用户的应用购买状态。
AFAIK: 截至目前,我无法看到您的Android应用程序购买的任何买家信息。 参考:https://support.google.com/googleplay/android-developer/answer/6056620?hl=en
但过去可能是我们能够看到这样的信息。 参考:Android Market (Google Play). Get buyer information
答案 1 :(得分:1)
据我所知,无法在app uninstall / reinstalls中保留此信息。您可以获取安装时间戳,但重新安装时将重置此时间戳。
但是,一个可行的解决方案可能是在SharedPreferences中设置一个标志并使用Android备份保存数据(http://developer.android.com/guide/topics/data/backup.html#SharedPreferences)
答案 2 :(得分:1)
正如其他答案所述,它看起来没有公共API。 (我相信,原因是默认情况下 - 一旦用户启动应用程序 - 他已经从Google Play获得了。所以在理想世界中,不需要进行此项检查)
如果我是你,我会在你的服务器端实现一些微小的API端点,并发送用户的accountId(参见Accessing Google Account Id /username via Android)和时间戳响应(或任何其他合理数据)的哈希版本这个特定用户ID的初始调用方法(即一旦他更换了手机 - 你仍会跟踪他)。
要获得当前帐户,请执行以下操作:
Account[] accounts = AccountManager.get(this).getAccountsByType("com.google");
if (accounts.length != 0) {
String myEmailid=accounts[0].toString();
}
(摘自here)
在 API 19 和 API 23 上进行测试(在Android M中,由于权限检查需要额外的工作)
答案 3 :(得分:1)
最可靠的方法是创建自己的(网络)服务,并让应用程序使用谷歌用户名(How do I retrieve the logged in Google account on android phones?)进行注册,并在以后重新安装时检查注册。