ご存知のように、アプリ内購入は[設定] - > [一般] - > [制限]でオン/オフできます。今私は、実際に支払いを行う前に、プログラム内でのアプリの購入状況を確認する方法があるのだろうかと思っています。iPhone:アプリ内購入のステータスをプログラムで確認する
4
A
答えて
3
私はSKPaymentQueueクラスのソリューションを持っています。私はアプリ内購入の制限をチェックするために "canMakePayments"メソッドを使用しています。アップルのドキュメントから
:
SKPaymentQueue Class Reference: canMakePayments
は「アンiPhoneは、AppleのApp Storeへのアクセスを制限することができます例えば、両親が追加コンテンツを購入するために自分の子供の能力を制限することができますあなたのアプリケーションが確認する必要があります。ユーザーが支払いをキューに追加する前に支払いを許可することが許可されていること。また、ユーザーが支払いを承認できないときにアプリケーションの動作や外観を変更することもできます。
サンプルコード:
if ([SKPaymentQueue canMakePayments])
{
SKPayment *payment = [SKPayment paymentWithProductIdentifier:identifier];
[[SKPaymentQueue defaultQueue] addPayment:payment];
} else {
NSLog(@"In-App Purchases are not allowed");
}
0
ほとんどのユーザー設定は、/User/Library/Preferences/.
に保存されているプロパティーリストを読むことでアクセスできますが、サンドボックスの制限により、これらの一部にアクセスできない可能性があります。だからコードでこれを試してみる必要があります。