Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/xpath/2.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
Android 更换安卓应用内购买的公钥(Base64)后,产品名称和说明不显示_Android - Fatal编程技术网

Android 更换安卓应用内购买的公钥(Base64)后,产品名称和说明不显示

Android 更换安卓应用内购买的公钥(Base64)后,产品名称和说明不显示,android,Android,这是我正在使用的代码。我已在适当的位置替换了原始API密钥。我已经在应用程序控制台中更改了示例标题和说明,还替换了公钥,但它显示的是应用程序的默认标题,而不是我在应用程序控制台中使用的标题 为了更好地理解,我附上了一个屏幕截图。我正在测试已经上传到Google Play的签名。有什么问题 应用程序正在成功运行 代码 publicstaticarraylistverifypurchase(stringsigneddata,stringsignature){ 如果(signedData==null

这是我正在使用的代码。我已在适当的位置替换了原始API密钥。我已经在应用程序控制台中更改了示例标题和说明,还替换了公钥,但它显示的是应用程序的默认标题,而不是我在应用程序控制台中使用的标题

为了更好地理解,我附上了一个屏幕截图。我正在测试已经上传到Google Play的签名。有什么问题

应用程序正在成功运行

代码
publicstaticarraylistverifypurchase(stringsigneddata,stringsignature){
如果(signedData==null){
Log.e(标记“数据为空”);
返回null;
}
Log.i(标记“signedData:+signedData”);
布尔验证=假;
如果(!TextUtils.isEmpty(签名)){
/**
*计算您的公钥(您从Android Market获得)
*出版商网站)。
*
*而不仅仅是将整个文本字符串存储在这里
*在程序中,在运行时从片段构造密钥或使用
*位操作(例如,与其他字符串的异或)以
*隐藏实际密钥。密钥本身不是机密信息,
*但我们不想让对手轻易取代对手
*使用自己的公钥,然后从
*服务器。
*
*通常,加密密钥/密码只应保存在
*内存足够长,可以执行需要执行的操作。
*/
字符串base64EncodedPublicKey=“”;
PublicKey key=BillingSecurity.generatePublicKey(base64EncodedPublicKey);
验证=账单安全性。验证(密钥、签名数据、签名);
如果(!已验证){
Log.w(标记“签名与数据不匹配”);
返回null;
}
}

确保您在应用程序中使用了正确的产品id。 根据你的截图,看起来你正在使用

android.test.purchased

另外,请确保您的应用内产品已发布(应用本身不需要发布)。

您何时更改了项目名称?更新可能需要几个小时。2天前我已上载了该产品。状态现在显示为“未发布”。
android.test.purchased