Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/197.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 安卓应用内计费公共存储库中的公钥_Java_Android_In App Billing_Android Billing - Fatal编程技术网

Java 安卓应用内计费公共存储库中的公钥

Java 安卓应用内计费公共存储库中的公钥,java,android,in-app-billing,android-billing,Java,Android,In App Billing,Android Billing,我已经编写了一个开源应用程序,在其中我通过应用内计费添加了捐款。谷歌说要“隐藏”公钥() 由于应用程序本身是开源的,每个人都可以编译它并更改密钥。目前,我创建了一个新项目,其中包含一个返回键的静态类。我使用这个类来获取密钥,因此我的git repo中没有普通的公钥。但这真的有必要吗 如果有人拥有我的公钥,最糟糕的事情是什么 谢谢, Asfaloth我思考了这个“问题”,并试图自己回答它。希望它对任何人都有用 注意:如果您计划通过应用内购买来销售物品和激活功能,您应该混淆您的密钥!我的答案只针对开

我已经编写了一个开源应用程序,在其中我通过应用内计费添加了捐款。谷歌说要“隐藏”公钥()

由于应用程序本身是开源的,每个人都可以编译它并更改密钥。目前,我创建了一个新项目,其中包含一个返回键的静态类。我使用这个类来获取密钥,因此我的git repo中没有普通的公钥。但这真的有必要吗

如果有人拥有我的公钥,最糟糕的事情是什么

谢谢, Asfaloth

我思考了这个“问题”,并试图自己回答它。希望它对任何人都有用

注意:如果您计划通过应用内购买来销售物品和激活功能,您应该混淆您的密钥!我的答案只针对开源应用

由于我不会在应用程序内购买时激活其他功能,黑客将无法替换密钥。他无法获得任何其他特征。即使它会启用一些东西,由于该应用程序是开源的,每个人都可以删除检查购买的条件

另一方面,如果有人在他的应用程序中使用密钥,我不确定如果他将应用程序上传到开发人员控制台会发生什么。我认为应用内购买会失败,因为每个上传的应用都会生成一个新的公钥


我想说,您可以在公共存储库中包含公钥。我也会把它包括在内。

可以肯定的是,最糟糕的情况是,有人可能会用自己的钥匙替换钥匙,从而欺骗你的应用程序,使其相信已经购买了。但既然你的应用程序是开源的,我不明白为什么会有人这么麻烦。谢谢你的评论。由于捐赠没有启用任何附加功能,我不在乎是否有人让应用程序认为捐赠是免费的。