2011年5月9日月曜日

アプリ内課金のアーキテクチャ

 アプリ内課金は、アプリとAndroid Marketサーバ間で課金リクエスト課金レスポンスによる通信で成り立ちます。ただし、アプリとAndroid Marketは直接通信をすることはなく、間にAndroid Marketアプリが仲介する形です。

 アプリ内課金の典型的な実装は、以下の3つのコンポーネントから構成されます。

1.     ユーザーの購入メッセージを処理し、課金リクエストをAndroid Marketアプリに送信するサービス

2.     Android Marketアプリから非同期に送信されるブロードキャストインテントを受信するブロードキャストレシーバ

3.     署名検証や"なりすまし"防止などのセキュリティ関連タスクを処理するセキュリティコンポーネント

 また、必要に応じて、以下の2つのコンポーネントを導入するのもよいでしょう。

1.     アプリ固有の購入通知、エラー、その他のメッセージを処理するレスポンスハンドラ

2.     アプリへの購入情報や状態をコールバックすることでユーザーインターフェイスを更新可能にするオブザーバ

 これらのコンポーネントに加え、アプリはある種のユーザーの購入情報を保存する方法と、購入する商品を選択させるユーザーインターフェイスを提供しなければなりません。チェックアウトのためのユーザーインターフェイスはAndroid Marketアプリによって提供されるため、アプリで用意する必要はありません。

 また、アプリによってはコンテンツ配信するためにリモートサーバを使用するかもしれませんが、アプリ内課金としてリモートサーバは必須ではありません。ただし、アプリ内で可能なセキュリティ関連のタスクをリモートサーバで行うことは、アプリをより堅牢にします。

 

0 件のコメント:

コメントを投稿