最近、IOS のアプリ内購入に Milkman StoreKit ネイティブ拡張機能を使い始めました。最初は素晴らしいと思い、かなり迅速に起動して実行できるように見えましたが、1 つの問題を回避できません。
StoreKit.create() をもう一度呼び出そうとすると、クラッシュしたように見えます。初めての場合… iTunes ストアから製品情報を取得すると、購入が完了し、アプリが意図したとおりに更新されます。Storekit を 2 回作成しようとすると、コードの Storekite.create() 行でスタックします。これをテストするためだけに新しいアプリを作成し(多くの人が犯したエラーを排除するため)、最初は create() は問題ありませんが、2 つ目はクラッシュします。以下は、私が作成したテスター アプリのコードです (タイムラインのみ)。
import com.milkmangames.nativeextensions.ios.*;
import com.milkmangames.nativeextensions.ios.events.*;
import flash.events.MouseEvent;
function openStoreKit(e:MouseEvent):void {
var t:TraceOnStage = new TraceOnStage(stage,"startProcess" + StoreKit);
if (! StoreKit.isSupported()) {
var t:TraceOnStage = new TraceOnStage(stage,"not supported" + StoreKit);
return;
}
var t:TraceOnStage = new TraceOnStage(stage,"initialising" + StoreKit);
StoreKit.create();
var t:TraceOnStage = new TraceOnStage(stage,"initialised!");
}
stage.addEventListener(MouseEvent.MOUSE_UP, openStoreKit);
openStoreKit() への最初の呼び出しは問題ありません..トレースで「initialising[StoreKit]」を取得してから「initialized」を取得します。2 番目の呼び出しは "initialising[StoreKit]" だけでクラッシュします。
考えられることはすべて試しました。最近 AIR 3.4 SDK にアップデートしましたが、それが原因でしょうか? (Flash Pro CS6を使用しています)