我已经使用模拟器实现了诺基亚IAP,它工作得很好。我可以很好地恢复、获取产品细节和升级。但它似乎不能在真正的设备上运行。使用RDA和一个真正的诺基亚X设备尝试代码。我的应用内产品有一个Published状态。结果如下:
-
当我使用
getProductDetails()
时,我得到一个大小为1的包(可能只包括ERROR_CODE),和一个错误码6。它发生在我的产品ID和测试ID 1023608上。但是使用模拟器,我成功地获得了我的产品详细信息。 -
getPurchases()
在设备上工作正常 -
getBuyIntent()
在真实设备上也很好,但我不能购买,因为我的运营商不允许IAP,这不是问题。
注意:我不使用setProductMappings()
方法,我正在使用从Nokia Publish设置的产品ID别名。此外,我正在执行AsyncTask内的方法。谁能帮助我为什么getProductDetails()不是在一个真正的设备上工作?谢谢。
下面的方法返回什么?
int response = mService。isBillingSupported(3, getPackageName(), ITEM_TYPE_INAPP);
如果它返回错误代码,你不应该尝试调用其他API方法。您应该尝试使用支持的运营商SIM卡。