2014-09-05 57 views
7

我昨天購買訂閱(不是Managed ProductUnmanaged Product)或測試,我退還了自己,然後取消訂閱。包退和取消,當我打電話後:「你已經擁有這個項目」,但getPurchases是空的

m_billingService.getPurchases(3, m_context.getPackageName(), ITEM_TYPE_SUBS, null) 

它會回到我的購買與0購買狀態(有效/ OK)。今天,當我調用相同的方法時,它什麼都不返回。但是,當我嘗試購買該商品時,Google Play商店會回覆我已經擁有該商品。

我已經重新啓動了Android設備,清除了Google Play服務緩存,並確保只有測試帳戶在我的手機上激活(即我刪除了我的Google開發者帳戶)。

該問題之前已經被問過,但總是在產品而不是訂閱的情況下。這些帖子的答案似乎是「消費」產品;訂閱不會被消耗。

+0

我敢肯定,訂閱保持活躍,以當用戶取消其當期結束,但我不知道,當你退還它會發生什麼...... – Zharf 2014-09-26 13:29:36

回答

2

當您cancel和/或refund訂閱購買,訂閱不會立即終止 - 它保持有效,直到其到期時間。

取而代之,您必須revoke訂閱購買,以提供退款並立即終止訂閱。

有關cancel,refundrevoke方法的更多信息,請參閱this section of the Google Play API Reference

4

我相當肯定你正在努力做的事情是不可能的,你試圖去做。由於我不確定訂閱的時間長短,因此Google可能確實仍然是訂閱的所有者,因爲即使您開始退款,它仍會保持活動狀態。

這允許用戶從購買中獲得退款,但仍然可以收到該服務。這將在應用程序所有者的判斷。如果您希望通過有效的投訴處理用戶,但也可以讓他們保持訪問權限,直到您解決問題或投訴爲止,這可能是一種很好的策略。它也可以幫助最大限度地減少收視率差的影響。

爲了做你想要的,你需要撤銷訂閱,那會立即終止它。在這個調用m_billingService.getPurchases()應該正常工作之後。

Documentation

相關問題