うまくいけば、タイトルは自明です。私はこのようなことをやろうとしています:
checkIfUserIsSubscribedToProduct(productID, transactionID: "some-unique-transaction-string", completion: { error, status in
if error == nil {
if status == .Subscribed {
// do something fun
}
}
}
私が提供した架空のコードのようなものは存在しますか?狂った薬を飲んでいるような気がする
編集する
同様の質問で、「領収書を検証する必要があります」という一般的な回答が何度も見られますが、領収書がどのように、あるいは何であるかさえ説明されていません。「領収書を検証する」方法を誰かに教えてもらえますか?私はこのチュートリアルを試しましたが、うまくいきませんでした。
編集-バウンティ
次の状況に対処してください:ユーザーが私の自動更新サブスクリプションにサブスクライブし、それが原因でより多くのデジタルコンテンツを取得します-クールで実装されています。しかし、アプリを開くたびに、サブスクリプションがまだ有効である(つまり、サブスクリプションをキャンセルしなかった)かどうかを確認するにはどうすればよいですか?これをチェックする最も簡単な解決策は何ですか?質問で提供した架空のコードのようなものはありますか?これについて私に説明し、役立つかもしれない主題に関する詳細を提供してください。
私は誰もが私のことをとても心配していて、私がこれをどのようにしていたのか知っています-恐れることなく、私の問題を解決しました。主な問題は、ドキュメントからAppleのサンプルコードを試してみたことですが、機能しなかったため、あきらめました。それから私はそれに戻ってそれを実装しました、Alamofire
そしてそれはうまくいきます。コードソリューションは次のとおりです。
スウィフト3:
let receiptURL = Bundle.main.appStoreReceiptURL
let receipt = NSData(contentsOf: receiptURL!)
let requestContents: [String: Any] = [
"receipt-data": receipt!.base64EncodedString(options: []),
"password": "your iTunes Connect shared secret"
]
let appleServer = receiptURL?.lastPathComponent == "sandboxReceipt" ? "sandbox" : "buy"
let stringURL = "https://\(appleServer).itunes.apple.com/verifyReceipt"
print("Loading user receipt: \(stringURL)...")
Alamofire.request(stringURL, method: .post, parameters: requestContents, encoding: JSONEncoding.default)
.responseJSON { response in
if let value = response.result.value as? NSDictionary {
print(value)
} else {
print("Receiving receipt from App Store failed: \(response.result)")
}
}
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加