麦芽(ばくが、英語:malt)とは、麦、特に大麦の種子を発芽させたもので、ビール、ウイスキー、水飴の原料となる。tvOS実際のところこの問題が発生するのは動作環境にも寄る気もするけど、tvOSアプリの実機デバッグで2台のAppleTV端末で同事象が発生したので、tvOSだと起こりやすいとかあるのかもしれない。Purchaseで購入やリストアをする場合、ざっくり書くと以下のような流れでAppStoreとやりとりしながら処理する。プログラミングガイドのP15に以下の記載がある。Storeに問い合わせるには、プロダクト要求オブジェクトを使用します。最初に、SKProductsRequestのインスタンスを作成し、プロダクトIDのリストで初期化します。要求オブジェクトへの強い参照を保持してください。しないと、要求が完了しないうちに、システムが割り当て解除してしまうおそれがあります併せてサンプルコードもガイドに記載されているが、SKProductsRequestは必要がなくなるまで強参照を保持しておかないと、AppStoreへの要求が完了する前に要求オブジェクトの方が先に解放される可能性があるとのこと。SKReceiptRefreshRequestの方は特にガイドには同様の記載はなかったが、SKProductsRequestもSKReceiptRefreshRequestも共にSKRequestのサブクラスのため、同じような事象が起こっているのではないかと推測。対応というわけで、ガイドに記載されているサンプルコードの通り、SKProductsRequest、SKReceiptRefreshRequestそれぞれの要求オブジェクトをそのクラスのインスタンス変数に保持することで、ひとまず事象としては解決。}}SKRequestDelegateの実装で、request(_:didFailWithError:)が呼び出されるとrequestDidFinish(_:)は呼ばれないとドキュメントに記載があるので、両方に要求オブジェクトの解放処理を入れている。おわりにガイドの更新履歴を見るとこの記述は2015/10/21に追記されているようなので、それ以前に書かれたWebの記事とか本とかを参考に課金関連の処理を実装していると、この辺に触れられていなくてハマる。(1)はてなブログをはじめよう!asmz0さんは、はてなブログを使っています。ブログを報告するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。