アプリ用の非消耗型iAPがいくつかあります。アプリの最初のバージョンには、アプリバンドル内に適切なコンテンツが含まれていたため、iAPはコンテンツにアクセスできる領域のロックを解除するだけでした。私はアプリの2番目のバージョンに取り組んでおり、今回はユーザーが購入したときにコンテンツがダウンロードされます。新しいバージョンのiAPを作成しました(重要:同じiAPの新しいバージョンですが、今回は「ホストされたコンテンツ」を追加します。これらは新しいiAPではありません)。ホストされたコンテンツは正常にアップロードされ、iAPのステータスは「送信準備完了」です。 "。すべてが機能し、コンテンツがデバイスにダウンロードされました。1週間前、テストしたときに何らかの理由で購入は成功しましたが、コンテンツがダウンロードされていませんでした。作成時にブレークポイントを使用するSKPayment
オブジェクト、ダウンロード可能なコンテンツがあることがわかります:
(lldb) po product.downloadable
YES
バージョンもiTunesConnectと同じです。
(lldb) po product.downloadContentVersion
1.1
ただし、内部-paymentQueue:updatedTransactions:
でトランザクションを処理する場合、SKDownload
オブジェクトはありません。
(lldb) po transaction.transactionState
SKPaymentTransactionStatePurchased
(lldb) po transaction.downloads
<__NSArrayM 0x13e1d38a0>(
)
TestFlight Sandboxユーザーを使用していますが、購入を実行すると[Environment:Sandbox]と表示されるので、実稼働環境にいないことがわかります。
何が起こっている?なぜ突然動作を停止したのですか?Appleは最近何かを変更しましたか?これは私を夢中にさせています。おかげで、どんな助けも大歓迎です。
さて、私はついにこれに対する答えを持っています。結局のところ、これはAppleのバグでした。これについてテクニカルサポートインシデントをリクエストしたところ、Appleのエンジニアが次のように回答しました。
これが既知の問題であることは残念です。それが解決されるまで、QAチームが要求した場合にのみ、バグレポートを送信して外部のTestFlightビルドを準備することをお勧めします。
しかし、最良の部分は、今日、全能の神に感謝し、同じエンジニアが戻ってきて言ったことです:
これで、この問題は発生しなくなったはずです。
テストしたところ、バグがなくなったことを確認できました。
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加