il2cpp.exe did not run properly!(il2cpp.exeが正常に動作しませんでした!)
シナリオライターの話が聞きたいんだよ、という方には
いきなり、なんだよ…て思うタイトルですね。
これは同じようなエラーに遭遇した人むけに
わざとエラーメッセージをタイトルにしてます。
Unity2017でAndroidアプリの実機テストを行おうとしたら
思いきりつまづいたので、そのために自分用メモとして残しておきます。
前の記事でも書いてますが、今Unityの勉強中です。
こちらのUnityの寺子屋を参考にしながら。↓
Chapter2に進み、放置ゲームのアニメーションや
音楽、スコアのセーブなどなど…基本的なことを学び
一通りできたところで、次に進む前に実機テストしたい!
と思い、
UnityからAndroid実機ビルド手順(2017.08版) - Qiita
こちらの記事を参考に挑戦してみました。
けれどNDKセットアップで、現在のUnity2017.2では
android-ndk-r13bが必要だよ! とメッセージが出たので
(上記リンク先で紹介している10でも、最新の16でもなく13だって)
NDK Archives | Android Developers
こちらのページから、13bをダウンロードして
Unity用の作業フォルダ内に解凍し、
Edit > Preferences > External Tools >
で、パスを通しました。
(2017/11/18現在. Windows10 Unity2017.2.0f3 64bit での話です)
これでビルドできるかなぁ~と思ったら。ら…!
下のほうに赤い文字でエラーが表示されてますよね。
Failed running C:\Program Files\Unity\Editor\Data\il2cpp/build/il2cpp.exe --convert-to-cpp --emit-null-checks --enable-array-bounds-check
とか
Exception: C:\Program Files\Unity\Editor\Data\il2cpp/build/il2cpp.exe did not run properly!
とか!
せっかく13bを落として設定したのに、うまく動いてないようです。
もっとちゃんと詳細を理解できたら
何がどううまくいってないか分かると思うんですが
いかんせん、Unity触り始めた初心者にはどこをどうすればいいのか分からず。
エラー文をGoogleさんに投げても明確な答えは得られなく、
なんとなく、il2cppを使わなければよさそう…ということだけ分かったので
ScriptingBackendを、il2cppからmonoに変えて再度ビルドしてみました。
そうしたら…!
Succeeded!
ビルドに成功しました!
警告文はいっぱい出てますが、まあクリティカルな赤字エラーじゃないので
今のところは無視して、実機検証用の設定をした端末をUSBで繋いで
Build And Run をしたら無事に実機端末にインストールできました。
(ちなみに手持ちのAndroid端末を開発者用の検証端末に使いたい場合、
設定 > 端末情報 > ビルド番号を何回かタップしてください。
開発者用のオプションが出てきます)
普通のアプリインストールとは違うので、
デフォルトの画面に最初からこんな風にアイコンがでるわけではなく、
アプリ一覧を探して、アイコンのショートカット持ってきたんですけど。
まあともかく、スクリプティングバックエンドを
il2cppではなく、monoにすればビルドできるということでした。
今、このスクリプティングバックエンドとは何やら…
というところから調べてるので
もし詳しいこと分かる人いたら逆にどうしてこうしたら動いたか
教えてください。
日々進化を遂げてるので、たぶん数か月経ったらverが変わって
またこの情報も古くなるとは思いますが…
もし同じエラーで悩んでいる人のお役に立てたら幸いです。
では!