IAB Version 3でのリストア

577 views
Skip to first unread message

kozzila

unread,
Mar 27, 2014, 7:52:20 AM3/27/14
to android-g...@googlegroups.com
これまで消費型でアプリ内課金を行っていましたが、非消費型でもアプリ内課金を出来るようにしたいと思っています。

ネットで調べるとRESTORE_TRANSACTIONSというのを使うように書かれているのですが、これはV2の場合のような気がするのですが
IAB Version 3のドキュメントを見ても特にリストアの時のことは書かれていないようで、V3の場合はどうすれば良いのか何方かご教授頂けないでしょうか?

よろしくお願いいたします。

Hirokazu Fukami

unread,
Mar 27, 2014, 8:03:58 AM3/27/14
to android-g...@googlegroups.com
こんにちはfkmです。

言葉の定義をしておきます
消費型:Googleが購入状態を管理しないアイテム
非消費型:Googleが購入状態を管理するアイテム

v3では、非消費型のアイテムしか扱うことはできません。
その代わり、非消費型のアイテムを「消費」するAPIが追加されています。
これを使って消費型のアイテムを実現します。

v2以前のRESTORE_TRANSACTIONSに相当するものは、v3では
queryInventory(サンプルのIabHelperのメソッド)です。
これは、Google Play側の購入情報キャッシュを取得するもので、
RESTORE_TRANSACTIONSとは違って通信は発生しない(はず)です。

こんな感じでいいでしょうか。。。?
> --
> このメールは Google グループのグループ「日本Androidの会」に登録しているユーザーに送られています。
> このグループから退会し、グループからのメールの配信を停止するには
> android-group-j...@googlegroups.com にメールを送信してください。
> このグループに投稿するには android-g...@googlegroups.com にメールを送信してください。
> http://groups.google.com/group/android-group-japan からこのグループにアクセスしてください。
> その他のオプションについては https://groups.google.com/d/optout にアクセスしてください。



--
-------------------------------------------------------------
深見 浩和(Hirokazu Fukami)

URI:http://www.fkmsoft.jp
email: f...@fkmsoft.jp

kozzila

unread,
Mar 28, 2014, 2:14:50 AM3/28/14
to android-g...@googlegroups.com
深見さん
ご回答ありがとうございます

RESTORE_TRANSACTIONSはV3ではないのですね・・
もう少し教えて頂けますでしょうか?

queryInventoryを使うとのことですが、これだけではリストアされないと思うのですが
レスポンスで帰って来た情報から、消費とでもするのでしょうか?
消費とするとアプリを再度購入してしまうような気がしますし、どのようにすれば良いのでしょうか?


2014年3月27日木曜日 21時03分58秒 UTC+9 fkm:
こんにちはfkmです。

言葉の定義をしておきます
消費型:Googleが購入状態を管理しないアイテム
非消費型:Googleが購入状態を管理するアイテム

v3では、非消費型のアイテムしか扱うことはできません。
その代わり、非消費型のアイテムを「消費」するAPIが追加されています。
これを使って消費型のアイテムを実現します。

v2以前のRESTORE_TRANSACTIONSに相当するものは、v3では
queryInventory(サンプルのIabHelperのメソッド)です。
これは、Google Play側の購入情報キャッシュを取得するもので、
RESTORE_TRANSACTIONSとは違って通信は発生しない(はず)です。

こんな感じでいいでしょうか。。。?

2014-03-27 20:52 GMT+09:00 kozzila <koz...@gmail.com>:
> これまで消費型でアプリ内課金を行っていましたが、非消費型でもアプリ内課金を出来るようにしたいと思っています。
>
> ネットで調べるとRESTORE_TRANSACTIONSというのを使うように書かれているのですが、これはV2の場合のような気がするのですが
> IAB Version
> 3のドキュメントを見ても特にリストアの時のことは書かれていないようで、V3の場合はどうすれば良いのか何方かご教授頂けないでしょうか?
>
> よろしくお願いいたします。
>
> --
> このメールは Google グループのグループ「日本Androidの会」に登録しているユーザーに送られています。
> このグループから退会し、グループからのメールの配信を停止するには
> android-group-japan+unsub...@googlegroups.com にメールを送信してください。

Hirokazu Fukami

unread,
Mar 28, 2014, 2:27:52 AM3/28/14
to android-g...@googlegroups.com
こんにちはfkmです。

> queryInventoryを使うとのことですが、これだけではリストアされないと思うのですが
> レスポンスで帰って来た情報から、消費とでもするのでしょうか?
> 消費とするとアプリを再度購入してしまうような気がしますし、どのようにすれば良いのでしょうか?

v2以前のRESTORE_TRANSACTIONSは、今ユーザーが保持しているアイテムを
取得するためのAPIで、これを実行すると通信が発生します。
これは、ユーザーがアプリを再インストールした時や、データを削除した時、
購入情報(=今ユーザーが保持しているアイテム)を再度GooglePlayから取得し、
端末内DBを復元するために用います。

v3では、これと同じことをqueryInventory()で行います。
購入情報をGooglePlayから取得します。
v2のRESTORE_TRANSACTIONSとの違いは、GooglePlayがキャッシュした値を返すので、
アプリ起動時に毎回呼び出しても大丈夫な点です。
(キャッシュの有効期限は1日のようで、ずっとオフラインだと「所持アイテム無し」を返します)

このqueryInventory()で取得したアイテムに対し、消費APIを呼ぶと、
GooglePlayで未購入の状態に戻ります。なのでこの時点では課金はされません。
>> > android-group-j...@googlegroups.com にメールを送信してください。
>> > このグループに投稿するには android-g...@googlegroups.com にメールを送信してください。
>> > http://groups.google.com/group/android-group-japan からこのグループにアクセスしてください。
>> > その他のオプションについては https://groups.google.com/d/optout にアクセスしてください。
>>
>>
>>
>> --
>> -------------------------------------------------------------
>> 深見 浩和(Hirokazu Fukami)
>>
>> URI:http://www.fkmsoft.jp
>> email: f...@fkmsoft.jp
>
> --
> このメールは Google グループのグループ「日本Androidの会」に登録しているユーザーに送られています。
> このグループから退会し、グループからのメールの配信を停止するには
> android-group-j...@googlegroups.com にメールを送信してください。
Reply all
Reply to author
Forward
0 new messages