2013-03-21 76 views
3

我迷上我們的遊戲達使用ButtonClicker樣本作爲基礎框架亞馬遜商店。我正在嘗試實施店面,並在onItemDataResponse回調中構建可購買商品的目錄。但是這與onGetUserIdResponse一起永遠不會被調用。但是sdk測試人員正在記錄成功的項目數據響應BroadCasts和UserID Response BroadCasts並記錄amazon.sdktester.json的內容。請注意0​​正在調用....是否有其他人經歷過這種情況?如果是這樣,你怎麼解決它?任何幫助或建議都會很棒。 感謝克里斯亞馬遜IAP - 不叫(除onSdkAvailable)PurchaseObserver回調

回答

0

首先,如果你正在測試,確保該SDK測試應用程序的安裝和您的設備或模擬器上上傳了一個amazon.sdktester.json文件/mnt/sdcard/(如描述here)。

onSdkAvailable調用回調函數,而不需要任何IPC,所以它並不表示你與客戶或測試應用程序通信。

此外,請確保您在清單中聲明瞭接收方。從the Amazon docs

<receiver android:name="com.amazon.inapp.purchasing.ResponseReceiver" > 
    <intent-filter> 
    <action android:name="com.amazon.inapp.purchasing.NOTIFY" 
      android:permission="com.amazon.inapp.purchasing.Permission.NOTIFY" /> 
    </intent-filter> 
</receiver> 

(在一個側面說明,在<action>標籤android:permission屬性沒有做任何事情,但是,如果你把它移動到它所屬的<receiver>標籤,你又不會接收廣播。—在從SDK測試程序至少,也許從IAP客戶以及你可以把它作爲文檔建議或者乾脆刪除android:permission屬性;見this thread

2

我只是你描述了同樣的問題。 (我是越來越沒有回調從採購經理)

在我的表現,我有:

<receiver android:name = "com.amazon.inapp.purchasing.ResponseReceiver" 
      android:exported="false" > 

     <intent-filter> 
      <action android:name = "com.amazon.inapp.purchasing.NOTIFY" android:permission = "com.amazon.inapp.purchasing.Permission.NOTIFY" /> 
     </intent-filter> 

    </receiver> 

拆除機器人:出口=「false」屬性解決了這個問題對我來說。本來我已經加入了android:出口=「false」屬性,因爲它消除了警告「出口接收器不需要許可」

現在我的清單看起來像這一點,並在應用內購買,可以適當地使用SDK測試儀進行測試:

<receiver android:name = "com.amazon.inapp.purchasing.ResponseReceiver" > 

      <intent-filter> 
       <action android:name = "com.amazon.inapp.purchasing.NOTIFY" android:permission = "com.amazon.inapp.purchasing.Permission.NOTIFY" /> 
      </intent-filter> 

     </receiver>