私はアプリ内購入(http://troybrant.net/blog/2010/01/in-app-purchases-a-full-walkthrough/comment-page-20/#comment-22550)のこのリンクに従っています。サンドボックステストユーザー(米国内)を使用すると、製品を正常に購入できます。購入ボタンを押すと、製品を復元する必要があります。商品がすでに購入されているかどうかはどうすればわかりますか?自動更新購読の領収書を確認する必要があります。どのようにできるのか?目的を用いてc。In App Purchase Restoreが機能していません
0
A
答えて
0
まず、カスタム支払いクラスに準拠するプロトコルSKPaymentTransactionObserver
を実装します。このクラスは、支払情報を受信するために使用することができます
.H:
#import <StoreKit/StoreKit.h>
@interface PaymentObserver : NSObject<SKPaymentTransactionObserver>
+ (instancetype)sharedInstance;
@end
.M:
@implementation PaymentObserver
+ (instancetype)sharedInstance{
static PaymentObserver * instance = nil;
static dispatch_once_t onceToken;
dispatch_once(&onceToken, ^{
instance = [[PaymentObserver alloc] init];
});
return instance;
}
- (void)paymentQueue:(SKPaymentQueue *)queue updatedTransactions:(NSArray<SKPaymentTransaction *> *)transactions {
for (SKPaymentTransaction *transaction in transactions) {
switch (transaction.transactionState) {
// Call the appropriate custom method for the transaction state.
case SKPaymentTransactionStatePurchasing:
break;
case SKPaymentTransactionStateDeferred:
break;
case SKPaymentTransactionStateFailed:
break;
case SKPaymentTransactionStatePurchased:
break;
case SKPaymentTransactionStateRestored:
//Purchased product info goes here. Get more details in transaction object.
break;
default:
break;
}
}
}
その後、AppDelegate
で、支払い情報を取得するために、クラスを超える使用します:
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
//......
[[SKPaymentQueue defaultQueue] addTransactionObserver:[PaymentObserver sharedInstance]];
//......
}
PaymentObserverクラスはAppStoreから購入した製品情報を取得します。
主な手順は次のとおりです。あなたがそれらを処理しようとしている詳細があります。
+0
ありがとうございます。完全なソースコードまたは参照リンクを私に送ることができますか? – Ishwarya
+0
私たちは学習のためのクラスを作っただけで、実際の関数はそれほど多くなく、プロジェクトから切り離されたときにソースコードファイルが遵守されないことがあります。あなたがそれを望むなら、メールを残してください。 –
関連する問題
- 1. In App Purchase-Unlock機能
- 2. Apple In App Purchase
- 3. App Purchase Purchaseで機能しない - iOS Swift StoreKit
- 4. In App In Purchase製品はまだ提出されていませんか?
- 5. iTunes ConnectのApp-In-Purchaseセクションがありません
- 6. Ionic Cordova In App Purchase - Fail
- 7. Android - Amazon In-App Purchase V2.0
- 8. iOS App App Purchase機能によると:「識別子が「com.example.App」のApp IDが利用できません」
- 9. In App Purchase(IAP)による寄付
- 10. iOS In App Purchase無効な商品ID
- 11. event-click in angular-ui-カレンダーが機能していません
- 12. sql in節が機能しません
- 13. SQL IN()が正しく機能していません
- 14. SQL演算子 "IN"が機能していません
- 15. Phonegap Android Appリンクが機能していませんか?
- 16. Azure Appサービスの承認ルールが機能していません
- 17. Weather app Javascriptが機能していません
- 18. in-app purchase Object {message: "課金が初期化されていません"、コード:-3、errorCode:-3}
- 19. In App Purchaseの状態がSKPaymentTransactionStatePurchasedに変更されない
- 20. ダイナミック商品とダイナミック価格のIn App Purchaseの使い方は?
- 21. event.target in functionは機能しません
- 22. platform.registerBackButtonActionが機能していません
- 23. ScrollViewが機能していません
- 24. アクティベータコマンドが機能していません
- 25. getElementsByClassNameが機能していません
- 26. haarcascade_frontalface_alt.xmlが機能していません
- 27. NSCameraUsageDescriptionが機能していません
- 28. Lastindexof()が機能していません
- 29. センテンスリバースループが機能していません
- 30. AbstractSecurityWebApplicationInitializerが機能していません
非消耗品のアプリを購入していますか? – Surjeet
いいえ、私はAuto_renewalサブスクリプションを使用しています。IAP – Ishwarya