Corona Simulator & Device Build

Corona Simulatorで起動

  • Corona SimulatorでBookShelfTemplateのmain.luaを読み込み,購入(Purchase)テキストを押すことによって、IAPダイアログが表示されます.
  • Files > Show Project Sandbox, ダウンロード済みのzipファイルとbg.pngを確認することができます
  • もし初期状態に復元したい場合,Sandboxフォルダーからファイルを消去してください. TemporaryFilesは,インターネットからキャッシュされているため,必ず消去してください.

デバイスでビルド

corona simulatorで動作を全て確認したら,IAP.luaからデバッグモードを無効にし,プロジェクト内の以下のluaファイルにapple,google,amazonのproduct IDを設定してください.

  • components/store/IAP.lua
  • components/store/model.lua

components/store/IAP.lua

  • iapOptions.salt は自分自身のテキストとして変更します
  • iapOptioions.debugMode デバイスでビルドする際にはfalseにしてください
function M:init(catalogue, restoreAlert, purchaseAlert)
    print("iap init")
    self.catalogue       = catalogue
    self.restoreAlert  = restoreAlert
    self.purchaseAlert = purchaseAlert

    local iapOptions = {
        catalogue         = catalogue,
        filename          = "epsodes_inventory.txt",
        --Salt for the hashing algorithm
        salt              = "something tr1cky to gue55!",
        failedListener    = failedListener,
        cancelledListener = failedListener,
        --Once the product has been purchased, it will remain in the inventory.  Uncomment the following line
        --to test the purchase functions again in future.  It's also useful for testing restore purchases.
        --doNotLoadInventory=true,
        debugMode        = true,
    }
    iap.init(iapOptions)
    print("iap init end")
end

components/store/model.lua

  • productNames.apple, productNames.google, productNames.amazonをデバイスでビルドする際には公式な値を設定してください。もし使用しない場合には,""と空白にしてください
M.catalogue = {
    products = {
            Epsode02 = {
            productNames = { apple="Epsode02_apple", google="Epsode02_googgle", amazon="Epsode02_amazon"},
            productType  = "non-consumable",
            onPurchase   = function() IAP.setInventoryValue("unlock_Epsode02") end,
            onRefund     = function() IAP.removeFromInventory("unlock_Epsode02") end,
        },
            Epsode03 = {
            productNames = { apple="Epsode03_apple", google="Epsode03_googgle", amazon="Epsode03_amazon"},
            productType  = "non-consumable",
            onPurchase   = function() IAP.setInventoryValue("unlock_Epsode03") end,
            onRefund     = function() IAP.removeFromInventory("unlock_Epsode03") end,
        },
    },
    inventoryItems = {
            unlock_Epsode02 = { productType="non-consumable" },
            unlock_Epsode03 = { productType="non-consumable" },
    }
}

results matching ""

    No results matching ""