2014-02-17 15 views
2

我正在研究构建Android设备的游戏,玩家可以通过我主持的网站登录其帐户。我希望应用程序能够通过游戏信息更新玩家的账号,比如他们的高分。是否可以验证游戏是否已购买,如果不是,可以阻止应用程序将数据记录到用户帐户中?如果人们盗用游戏并将其玩游戏,我并不介意,但我希望只有在合法购买时才能使用该帐户。这场比赛将在Unity3D中完成,但我怀疑这一点尤其重要。我可以验证用户是否具有在线功能的Android应用程序的合法副本?

如果这是可能的,一些链接在正确的方向寻找信息也将不胜感激。

回答

1

我假设通过合法副本,你的意思是它从Play商店安装。如果是这样,那么你可以使用:

PackageManager pm = getPackageManager(); 
String installationSource = pm.getInstallerPackageName(getPackageName()); 

“installationSource”将包含包名称,如果它是从Play商店安装,如果不为null。

另一种方式是通过使用谷歌分析here

+0

不过,我相当肯定,如果它像检查installationSource字符串一样简单,那么android应用程序的盗版将更加困难,因为如果该值为null,那么应用程序可能根本无法正常工作,对吗?不过,我正在研究谷歌分析。如果盗版版本的应用脱机使用并不重要,我只是不希望人们将他们的盗版应用连接到他们的账户。 – Sharpevil

+0

那么您如何使用您的付款方式来识别此类用户?为前。如果您通过Google钱包接受付款,则可以确定哪些用户正在为应用付费,只有这些用户将获得登录ID,而其他用户则使用访客登录。 –

+0

这看起来像我想要的,假设它与现有帐户兼容。我会研究一下。 – Sharpevil

相关问题