2011-10-25 30 views
14

我正在玩Google應用內結算示例應用「Dungeons」。Android應用內結算:什麼是「開發人員有效負載」以及「購買」按鈕的工作原理?

在這個應用程序中,我可以點擊「購買」按鈕購買的東西或在「編輯有效載荷」按鈕...編輯有效載荷:)。但我不明白這個按鈕和「編輯有效載荷」是什麼意思......任何人都可以澄清一下嗎?

順便說一句,任何人都可以告訴我「購買」按鈕如何觸發購買行爲,因爲在地下城的應用程序中的代碼是以下(購買行動是由我不明白如何...):

public void onClick(View v) { 
     if (v == mBuyButton) { 
      // NO CODE HERE TO DO SOMETHING ???!!! 
      if (!mBillingService.requestPurchase(mSku, mPayloadContents)) { 
       showDialog(DIALOG_BILLING_NOT_SUPPORTED_ID); 
      } 
     } else if (v == mEditPayloadButton) { 
      showPayloadEditDialog(); 
     } 
    } 

謝謝!

+0

這是一個替代應用教程:http://blog.blundell-apps.com/simple-inapp-billing-payment/ – Blundell

回答

5

在if語句中調用requestPurchase方法,這會執行購買請求,如果失敗,將顯示錯誤對話框。從那裏你也可以關注負載,看看它是如何使用的。

+0

感謝您的回答!我沒有在if語句中使用這種語法!我已經閱讀了代碼,但是如果你能夠快速解釋這個「有效載荷」是什麼,這將會很有幫助。謝謝:) –

+2

開發人員有效載荷使用可以在這裏找到:http://developer.android.com/guide/market/billing/billing_reference.html#billing-interface – SnowyTracks

+0

非常感謝! –

11

「開發人員有效負載」是開發人員指定的字符串,其中包含補充有關訂單的信息。當您發出REQUEST_PURCHASE請求時,您可以爲該字段指定一個值。

例如,您可以使用此密鑰來發送帶有訂單的索引關鍵字,如果您使用數據庫來存儲採購信息,這非常有用。谷歌建議您做而不是使用此密鑰發送實際數據或內容。

欲瞭解更多信息,請參閱In-app Billing Reference

+2

在測試應用內結算時,Google不會返回我的開發人員有效負載!我希望它包含在簽名中,但它對開發人員有效負載返回null。我試圖購買測試項目android.test.purchased。 – Chloe

+0

@Chloe - 你有沒有找到解決這個問題的辦法?我遇到了同樣的問題。 – tamak

+0

@tamak我不記得確切,但我相信該應用程序必須首先發布,並且可能它必須是一個真實的項目。測試1美元的物品。 – Chloe

相關問題