0

3回目のアップルは、アプリ内購入タイプのためバイナリを拒否しました。 1月1日、無料、のパッケージにIAPを使用してを購読する。以前私はConsumableを使用していたので、アプリは拒否され、"再生不可能"を使用するように提案されました。チュートリアル "https://www.raywenderlich.com/36270/in-app-purchases-non-renewing-subscription-tutorial"に従っていますか?私は、トランザクションを検証するチュートリアルから "VerificationController"クラスファイルをダウンロードしました。しかし、多くのエラーが発生しています。アプリ内購入不可能なiOSの検証と検証

VerificationViewController.m 
No visible @interface for 'VerificationController' declares the selector 'encodeBase64:length:' 
No visible @interface for 'VerificationController' declares the selector 'decodeBase64:length:' 
Implicit declaration of function 'checkReceiptSecurity' is invalid in C99 
Conflicting types for 'checkReceiptSecurity' 
Missing context for method declaration 

CommonDigest. 
Missing '@end' 

誰でもこの問題を解決してアプリを送信できますか?前もって感謝します。

+0

こんにちは@ Yuvaraj.M uがそれのための解決策を見つけましたか?でも、イムは、私は解決策を見つけられませんでしたその後、我々はIAPを落とした同じ問題 –

+0

こんにちは@のpooja_1205を取得統合。この問題の解決策を見つけた場合は、ここで回答を共有してください。それは誰にとっても役立つかもしれません。私が解決策を手に入れたら、ここでそれを共有します。ありがとう。 –

答えて

0

私はこのことについて私の考えを分かち合いましょう: まず最初に、再生不可能なサブスクリプションは、すべてのサブスクリプションで処理するのが最も難しいです。開発者へのアップが処理する:

  1. は、ユーザーが購入を復元できるようにあなたは、ボタンを復元提供する必要が言及しないようにサブスクリプションの有効期限
  2. 追跡サブスクリプションが
  3. ここ

はどのようにあります私は私を扱いました: 私は重要なデータを追跡するためにiCloudとバックエンドサーバーの組み合わせを使用します。

  1. ユーザーが(すなわち、それを購入)非再生可能に加入するたびに、私は 購入日を格納し、バックエンドサーバーにとのiCloudで購入日から1ヶ月 に有効期限相当を作成します。私の定期購読は1ヶ月間だけだったことに注意してください。 iCloudのストアstoreUserPurchase.set(key: nrs_key, vale: someData)
  2. に加入したユーザは、 ユーザーのiCloud上に保存されているいくつかのユニークなIDに基づいて有効期限は、この一意のIDを使用して、私は 有効期限を計算するために自分のサーバーを頼む場合、私がチェックし、に加入素材にアクセスしたいときはいつでもこのIDに基づいて有効期限が切れていない場合は、 にアクセスしてください。何かのように purchaseInfo = getSomePurchaseDataFor(key: nrs_key) serverValidateReceiptAndGetExpirationDateFor(receipt, purchaseInfo)
  3. これらすべての検証で言及して忘れてしまったのは、バックエンドサーバでも行われている受領確認と同じです。

購入の復元: この機能を提供する必要があります。そうしないと、アプリはAppleによって拒否されます。

Here is the tutorial worth reading

In-App Purchase FAQ

関連する問題