読者です 読者をやめる 読者になる 読者になる

フニゲの開発日記

Electronとか...

ネイティブ環境で動かすときの注意点

Cocos2d-JS

 何となく不安なので、開発中のゲームがネイティブ環境で動くかテスト。

 Full版のcocosコマンドを使って、適当なバンドルIDのプロジェクトを作成する。

$ cocos new -l js --ios-bundleid com.hogere.nativetest nativetest

 ios-bundleidの前の「--」はマイナスが2個。次に、Lite版からソースコードをコピーする。例えばLite版のフォルダが「test」ならば

$ cp test/project.json nativetest/
$ cp -r test/src nativetest/src
$ cp -r test/res nativetest/res

 あとはnativetest/frameworks/runtime-src/project.ios_mac/の下にあるxcodeprojファイルをXCodeで開けばネイティブ環境でのビルドができる。

 ……で、何も無ければ誰も苦労しないのだが、以下トラブルシューティング。

 ネイティブ環境のproject.jsonにはコメントが書けないようだ。よくあるパターンだが

//  "jsList"        : ["src/HelloWrold.js", "src/resource.js"]
    "jsList"        : ["src/MyScene.js", "src/resource.js"]

 とかコメントアウトして前の行を残していると、動かなかった。

 それから、メソッドの引数の数とか間違っていると、web環境では何も言われないのにネイティブ環境で怒られることがある。これはまあ、エラーメッセージに行番号が表示されるので一個ずつ直せばいい。

 あとは「Invalid Native Object」エラー。v2の時にも書いたが、ケースバイケースなので、対処が難しいときもあると思う。先週作ったChipmunk2Dを使ったサンプルでテストをしたのだが、iOS用にビルドした時はうまくのに、mac用にビルドするとこのエラーが出て動かなない。何でかなあ。まあMacで出す予定はないからいいんだけど。

 Androidはまだ試してません。

広告を非表示にする