2013-05-22 3 views
9

私はinapp請求のサブスクリプションを実装したいアンドロイドアプリケーションで作業しています。 Google Playデベロッパーコンソールで登録期間IDを7日間に作成しました。In appサブスクリプションのトレイル期間を実用的に取得します。

私の必要条件は、アプリが起動したときにサブスクリプションの残りの日数をユーザに毎回通知することです。だからどうすればサブスクリプションに残っているトレイル期間を実際ににすることができますか? inapp請求のサブスクリプションをトレイル期間で実装する正しい方法ですか?いいえ、これを実装する正しい方法を教えてください。

+0

どうしたのですか、解決策を追加できますか、ありがとうございます。 –

答えて

0

はい、アプリ内課金APIバージョン3では試用期間がサポートされています。ドキュメンテーションに必要な試用期間の詳細を提供するAPI呼び出しがあるかどうかわからないということは、そのようなクラス/メソッドがないことを意味するものではありません。

ただし、サブスクリプションステータスのリモートGoogleサービスにのみ依存するということは、ネットワークに接続していないときにユーザーに通知されないことを意味します。おそらく、ネットワークに接続していないときに通知がないことが問題ではないかもしれません。しかし、この制限を知って、私は記録し、開始日をローカルでも保持します。

ユーザーが試用期間を開始できるAPI呼び出しの結果を取得したら、そのデータをローカルに保存することができます。ローカルデータを保存するには、簡単な方法(最も簡単な方法)、ローカルファイルを書き込む方法(少し難しい方法)、sqliteデータベースをセットアップして取り込む方法(さらに難しい)の3つがあります。私はいつも好みを使い、とても簡単です。

複数のAndroidデバイス(複数のデバイスをサポートするサブスクリプションスキームの場合)にローカルデータにアクセスできるようにするには、代わりにこのデータをリモートサーバーに送信する必要があります。そして、活動開始時にデータを入手してください。

ローカルデバイスのデータ - 試用期間の開始時刻を確認し、残りの日数を計算してメッセージを表示するには、ローカル設定を読んでください。また、Google API呼び出しを使用してサブスクリプションのステータスを確認します。競合が発生した場合は、それに応じてローカル設定を更新してください。

この戦略を使用すると、試用期間の詳細を取得するためにGoogle APIを使用せずに、残りの試用期間にアプリケーション/アクティビティの開始時にユーザーに通知することができます。アプリユーザーがネットワーク上にいるかどうかに関係なく、ボーナスとして提供されます。

関連する問題