1

私はIOSが初めてです。現在、ニューススタンド アプリのアプリ購入の実装に取り​​組んでいます。ニューススタンド アプリに自動更新サブスクリプションを実装しました。アプリ購入の自動更新サブスクリプションが有効かどうかを確認するにはどうすればよいですか?

4

2 に答える 2

2

サブスクリプションを作成するときは、レシートオブジェクトを保存する必要があります。レシートを使用して、レシートが表すサブスクリプションが有効かどうかを判断できます。

StoreKitの処理を支援するためにCargoBay(https://github.com/mattt/CargoBay )を使用しています。それには方法があります:

[[CargoBay sharedManager] verifyTransaction:transaction password:nil success:^(NSDictionary *receipt) {
  NSLog(@"Receipt: %@", receipt);
} failure:^(NSError *error) {
    NSLog(@"Error %d (%@)", [error code], [error localizedDescription]);
}];
于 2013-02-19T12:40:00.263 に答える
0

今日、私はこの問題に悩まされています。Apple doc here に従ってください。この方法を使用して、サブスクリプションの有効期限が切れているかどうかを確認しました。

これは、Objective-C での私のコードです。

NSDictionary *jsonResponse = [NSJSONSerialization JSONObjectWithData:resData options:0 error:&error]; 
// this is response from AppStore
NSDictionary *dictLatestReceiptsInfo = jsonResponse[@"latest_receipt_info"];
long long int expirationDateMs = [[dictLatestReceiptsInfo valueForKeyPath:@"@max.expires_date_ms"] longLongValue];
long long requestDateMs = [jsonResponse[@"receipt"][@"request_date_ms"] longLongValue];
isValidReceipt = [[jsonResponse objectForKey:@"status"] integerValue] == 0 && (expirationDateMs > requestDateMs);

この助けを願っています。

于 2016-09-16T10:23:14.447 に答える