0

我不能自己測試這個,因爲顯然沒有辦法完全終止訂閱。在訂閱購買兩次的情況下對RESTORE_TRANSACTIONS的迴應是什麼?

所以,我想測試下面的用例:用戶購買訂閱,取消它(或過期),比用戶購買相同的訂閱。

我會用RESTORE_TRANSACTIONS響應得到什麼?我會得到兩個具有相同商品標識,不同購買標記和不同狀態的商品嗎?或purchaseToken將保持不變?我擔心只有一個訂閱的訂單ID和購買令牌不同,以前訂閱的信息將會丟失,但我現在無法確認。此外,訂單中的每次重複購買都會更改訂單嗎?

爲什麼我需要這個 - 訂閱每日將提供新的內容的用戶,所以當用戶取消申購(認購A),後來買了一個新的(訂閱B)我需要顯示的時間框架內發佈用戶內容subscription A,以及內容在subscription B的時間範圍內,但沒有在所用期間發佈的內容沒有激活訂閱。

回答

1

注意:你應該用只有當你的應用程序安裝在第一次的設備,或者當你的應用程序已經從一個設備刪除並重新安裝RESTORE_TRANSACTIONS請求類型。

由於性能影響,不建議定期使用RESTORE_TRANSACTIONS

從Android開發者http://developer.android.com/guide/google/play/billing/billing_overview.html

右邊線雖然我明白你的訂閱結算的關注。谷歌對他們的API非常好,你應該如何與購買交互。

當您發送RESTORE_TRANSACTIONS請求時,您將收到兩次廣播。 A RESPONSE_CODEPURCHASE_STATE_CHANGED。以下是Google提供的表格,說明您可以收到的不同值。

enter image description here

即將回到你的問題關於購買兩個訂閱:你應該檢查,看看用戶是否購買了與GET_PURCHASE_INFORMATION要求訂購,如果訂閱列表中查看訂閱的購買狀態看看你是否應該繼續購買。

至於你會得到什麼,如果你能「買」兩個相同的訂閱,它的(我想說不可能)不太可能...但你會得到兩個訂單交易。

只要您始終了解用戶事務,Google的API就會完成剩下的工作。祝你好運!

+0

那麼,你的意思是我不能再購買過期的訂閱?另外,我如何檢查他是否使用GET_PURCHASE_INFORMATION來強制訂閱?我不能自己發起這個請求,因爲我需要通知ID。 – Sver

+0

另外,在RESTORE_TRANSACTIONS請求之後,我收到了我購買的所有產品的json。 API文檔聲明我可以「恢復訂閱交易記錄」。這是否意味着每個訂閱都會有多個記錄?我會收到每次向用戶收取的定期付款的交易信息嗎? – Sver

+0

不,你可以再次購買到期的訂閱 - 他們將顯示爲同一項目的另一個交易,一個爲過期(或取消),一個爲活動(購買成功)至於json會給你所有購買的訂閱(這就是爲什麼你不想重複調用這個)'Bundle request = makeRequestBundle(「GET_PURCHASE_INFORMATION」);'我稍後會發表一條評論,要上學。 –

相關問題