2015-09-07 23 views
0

用大約一個月的工作時,此代碼前谷歌推遲認購內部錯誤500

PurchasesResource.SubscriptionsResource.DeferRequest request1 = purchase.Subscriptions.Defer(defRqst, gsPackageName, sSubscriptionName, sPurchaseToken); 

我知道包名和預訂名稱是否正確,以及蘇氨酸令牌跨過去了。整個事情是在Alpha測試中,所以這可能是問題所在。之前的工作時,谷歌提供的整個測試機制與現在不同。

有沒有人知道你是否可以在完整的alpha和beta測試環境中測試延遲,或者如果最近事情發生了變化。

回答

-1

應用內結算版本2 API已棄用,以支持版本3 API。如果您的應用正在使用應用內結算,請確保它使用的是版本3 API。如果您的應用仍在使用版本2 API,則必須儘快遷移到版本3 API。

我們計劃在2015年1月27日關閉應用內結算版本2服務,此後用戶將無法再通過版本2 API購買應用內商品和訂閱。我們強烈建議您在2014年11月之前遷移您的應用以使用版本3 API,以便爲用戶提供充足的時間將其應用更新至新版本。

欲瞭解更多詳情,請訪問http://developer.android.com/google/play/billing/v2/api.html

+0

我正在使用.NET API客戶端庫。 NuGet最新版本是Google.Apis.AndroidPublisher.v2,最近一次發佈於2015年7月23日。似乎並沒有.NET for In-app計費軟件包V3,除非它包含V3,但並不明顯。 –

+0

OP指的是Google Play開發者API而不是應用內結算API:https://developers.google.com/android-publisher/api-ref/purchases/subscriptions/defer – Alex

0

我不經常回答我的問題,但我發現的是,在測試過程中,你似乎無法推遲訂閱。我認爲這是因爲在測試中,每個應用內結算訂閱都設置爲一天,而不管針對該產品的期限。因此,如果您嘗試將訂閱推遲一段時間,那麼它將超出1天的測試期限,並返回一個錯誤,但不會包含500內部錯誤以外的其他詳細信息。我可能是完全錯誤的,但我無法做到的任何事情都會使它工作。 所以我想,爲什麼不用相同的代碼試試它。所以我購買了我的一款產品,並要求系統延期16天,並且正式做到了。這是在已發佈的產品上,但應用程序正在測試中。我所做的只是從我的谷歌開發人員控制檯設置選項卡下的許​​可測試Gmail帳戶中刪除我已設置用於測試的第二個Gmail帳戶,從而將自己從測試用戶區域中刪除。這迫使我在商業中心的訂單下看到的測試應用程序真正購買。 因此,看起來.NET客戶端庫Google.Apis.AndroidPublisher.v2

確實在這一點上仍然有效。我不確定它是否包含應用內付款V3並已聯繫作者進行驗證。在這一點上,我從不是作者的人那裏得到一個迴應,說使用以V3結尾的庫,但這不存在。我會更新這一次,我知道更多。

但總而言之,推遲工作的唯一方法是使用真實訂閱而不是測試。