在 Android 中实现应用内计费的人中,一个广泛寻求的问题是如何处理多个帐户。如果用户配置了多个帐户,哪一个将用于应用内计费(因为没有让用户选择帐户的选项)?在挖掘了很多之后,下面的段落似乎可以解释它..
注意:要进行测试购买,许可证测试帐户必须在用户的 Android 设备上。如果设备有多个帐户,则将使用下载该应用程序的帐户进行购买。如果没有帐户下载该应用程序,则使用第一个帐户进行购买。用户可以通过展开购买对话框来确认进行购买的帐户。
我使用应用计费中涉及的帐户创建开发人员有效负载,以便可以在以后的某个时间点或在其他设备上正确恢复它。但是自从Honeycomb之后,就没有Primary Account这种东西了。用户可以删除任何帐户,可能是购买应用程序的帐户,在这种情况下,帐户列表中的第一个帐户将用于计费。现在,如果我知道使用了哪个帐户并且它恰好是“不是安装应用程序的帐户”,我至少可以通知用户以后不会恢复以下购买。
所以,我的问题是..
有没有办法找到用于下载应用程序的帐户?
Google Play 似乎确实使用了这些信息。无论如何,我们可以与 Google Play 交互到这个级别?
注意:PackageManager 似乎没有处理这个问题。