いんでぃーづ

ゲームいろいろ、いろいろ自由

UnityIAP : NonConsumableなアイテムの購入状態をクリアする

UnityIAPを使っている場合、一度しか購入できない商品は NonConsumable として定義する。

が、テスト中は何回も買いたいので購入状態を戻す方法を調べていたのだが、どうも見つからなかった。 この関数 でクリアするのかなと思ったが、やっぱり購入しなおせない。

ので無理やりやる方法をメモ。

Google Play Store の場合

一旦 Consumable なものとしてInitialize しなおせばよい。

NonConsumableとして以下のように定義している場合

    var builder = ConfigurationBuilder.Instance(StandardPurchasingModule.Instance());
    builder.AddProduct("test_product", ProductType.NonConsumable, new IDs
        {
            {"test_product", GooglePlay.Name},
        });
    );

    UnityPurchasing.Initialize (this, builder);

ConsumableにしてInitialize

    var builder = ConfigurationBuilder.Instance(StandardPurchasingModule.Instance());
    builder.AddProduct("test_product", ProductType.Consumable, new IDs
        {
            {"test_product", GooglePlay.Name},
        });
    );

    UnityPurchasing.Initialize (this, builder);

これを実行した上で、また NonConsumable に戻すと買い直すことができる。

デバッグ時はアプリ起動時にこれをやればいいかも。試してないけど。(できなかったら一旦 Consumable にしてビルド→実行する。めんどい) もっと良い方法があったら教えてください。

iOS App Store

一度アプリを削除し再インストール、リストア処理をせずに もう一度購入動作を行えば、初回購入と同じ処理が走ります。


“Unity” and Unity logos are trademarks or registered trademarks of Unity Technologies or its affiliates in the U.S. and elsewhere, and are used under license.


免責事項

当サイトの広告バナー、リンクによって提供される情報、サービス内容について、当サイトは一切の責任を負いません。

また、当サイトの情報を元にユーザ様が不利益を被った場合にも、当サイトは一切の責任を負いません。

すべて自己責任でお願いします。