いんでぃーづ

個人でゲーム開発してる上で吸収したモノたち紹介。UnityからGIMPまでなんでも。デザインとかゲーム論まで語っちゃうよ的なアレ。

MENU

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

PlayStoreと同じ方法でいけるかもしれないが試してない。いつか調べる

Amazon.co.jpアソシエイト