簡體   English   中英

針對應用內購買的自動續訂訂閱

[英]Auto-Renewable subscription for in-app purchase

從應用程序內購買(自動更新)購買產品后,我點擊服務器上的API來提供購買信息。

如何知道該產品是否適用於推出API?

當用戶取消該訂閱時,如何知道?

Swift 3:為了讓您檢測用戶何時取消訂閱,您需要執行以下操作:

  1. 下載應用收據
  2. 驗證收據,以便您可以返回包含所有應用內購買和訂閱詞典的json
  3. 現在,在每個收據中,如果這是訂閱購買,則字典中有一個名為cancellation_date的字段,否則不能用於其他應用內購買。 如果這是零,那么沒有取消,但如果它有一個包含取消日期的值,那么取消確實發生了,並根據蘋果:

    取消日期對於Apple客戶支持取消的交易,取消的時間和日期。

    對已取消的收據進行處理,就像沒有進行任何購買一樣。

然后,下面的鏈接說明了您可以在收據中使用的所有字段;

https://developer.apple.com/library/ios/releasenotes/General/ValidateAppStoreReceipt/Chapters/ReceiptFields.html

代碼示例:

// Create receipt request
 let receiptRefreshRequest = SKReceiptRefreshRequest()

// Get the receiptUrl from the main bundle
 let receiptUrl = Bundle.main().appStoreReceiptURL

 //If the receipt file exist on local device
 if (receiptUrl as NSURL?)?.checkResourceIsReachableAndReturnError(nil) == true{

            // Get the file as data
            let receipt: Data = try! Data(contentsOf: receiptUrl!)


  }

現在您將收據發送到蘋果服務器,以使用您的服務器驗證它作為蘋果推薦。 從驗證中獲得回調后,您將檢查取消日期。

Apple不提供內置於iOS或REST API中的任何內容,可為您提供簡單的訂閱詳細信息,也不存在任何可以在續訂或取消方面收聽和回復的回調。 Apple確實有一個API,當給定用戶的本地收據和iTunes Connect中生成的“共享密鑰”時,會返回用戶的應用程序購買歷史記錄的JSON對象,包括其當前的訂閱信息。 更多信息請查看此鏈接

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM