当我查询Google InApp结算项目的产品详情时,我收到Null Exception错误。
我有一个项目添加到应用内开发者控制台网站,它显示状态为“活动”;
以下是我的代码。
// Listener that's called when we finish querying the items and subscriptions we own
IabHelper.QueryInventoryFinishedListener mGotInventoryListener = new IabHelper.QueryInventoryFinishedListener() {
public void onQueryInventoryFinished(IabResult result, Inventory inventory) {
Log.d(TAG, "Query inventory finished 15.");
if (result.isFailure()) {
Log.d(TAG,"Failed to query inventory: " + result);
return;
}
SkuDetails productDetails = inventory.getSkuDetails(SKU_ANATVITALSIGNS);
// Log.d(TAG,"Gas Price is: " + productDetails.getPrice());
if (productDetails != null){
Log.d(TAG,"Deck price is: " + productDetails.getPrice());
}else{
Log.d(TAG,"No Product Detail" );
}
Log.d(TAG, "Query inventory was successful.");
// updateUi();
// setWaitScreen(false);
Log.d(TAG, "Initial inventory query finished; enabling main UI.");
}
当我尝试获取“productDetails.getPrice()”时程序错误。
感谢任何帮助。这是一个为期两天的抨击。
TIA
答案 0 :(得分:3)
我没有使用正确格式化的查询来调用侦听器。
我添加了下面的代码并将信息传递给了监听器,我的产品详细信息现在显示出来了。
以下是我更改的代码:
String[] moreSkus = {SKU_ANATVITALSIGNS};
mHelper.queryInventoryAsync(true, Arrays.asList(moreSkus), mGotInventoryListener);
解决了这个问题。