So-net無料ブログ作成
検索選択

Haxe OpenFL による Android デバッグさせる手順

何かと問題の多いアンドロイドデバッグではありますが、自分の環境においては、下記の内容で Windows上での Haxe OpenFL 環境において、 Androido端末とUSB接続して、実機デバッグすることができましたので、そのやり方を公開します。

Haxe OpenFL による Android デバッグ設定
Android デバッグを行うには、コマンドプロンプトから lime setup android を実行すればよいのですが、セットアップ途中 Android SDK、Android NDK、JDK のインストールが促されます。

Android SDKについて
Android SDK(Android Software Development Kit)とは、Android アプリを開発するにあたり、必要となるソフトウェアがパッケージ化されたものですが、何らかの理由で既にコンピューター内に Android SDK が存在するなら、そこまでのパスをメモ帳などにコピーしておきます。

Android NDKについて
Android NDK(Native Development Kit)とは、Android アプリで C および C++ コードを使用できるようにしたり、独自のソースコードのビルド、あるいは事前にビルドされた既存ライブラリを活用する際に必要となるものですが、コンピューターが 64bit 環境の場合、64版のAndroid NDK がインストールされてしまいますので、Android NDK に関しては、コマンドラインからインストールせずに、別途、32bit版をダウンロードして設置することをお勧めします。

64bit版の Android NDK だと、ビルド時に十中八九、エラーを吐きます。(2017/07/16時点)
Running Pre-Build Command Line...
cmd: "C:\HaxeToolkit\haxe/haxelib" run lime build "project.xml" android -release -Dfdb
Creating C:/Users/ユーザ名/app/PiratePig/Export/android/release/obj/obj/android-v7/__pch/haxe/hxcpp.h.gch...
'arm-linux-androideabi-g++' は、内部コマンドまたは外部コマンド、
操作可能なプログラムまたはバッチ ファイルとして認識されていません。

hxcpp_config.xml に追記する対処法を公開してる方もいるようですが、自分の環境では効果がありませんでした。

というわけで、自分の場合は、https://developer.android.com/ndk/downloads/index.html?hl=jaから 32bit版の NDK(zip) をダウンロードして、C:\Development 内に Android NDK というフォルダを作成して、その中に解凍しました。

JRE、JDKについて
JRE(Java Runtime Environment)とは、コンピュータシステム上で Java アプリケーションを実行させる環境を構築するソフトウェアのことですが、既に何らかのタイミングでコンピューターに備わっている場合が多いはずですが、JRE が備わってしないようなら、JDK の標準インストールであれば、JDK と共に、JRE のインストールも行えますので、画面の指示に従い、JRE もインストールします。
JDK(Java Development Kit)とは、Java アプリケーションを開発するにあたり、必要となるソフトウェアがパッケージ化されたものですが、JDKに関しては、その時点においての最新バージョンを予めインストールしておきます。

JDKの 32bit、64bit は、自分のコンピューターに応じて選べばOKです。

64bit のコンピューターだと、C:\Program Files\Java 内にインストールされるはずです。

つまり JAVA_HOME が
C:\Program Files\Java\jdk1.8.0_131

実行パスが
C:\Program Files\Java\jdk1.8.0_131\bin
になります。

これらのパスもメモ帳にコピーしておきましょう。

JDKファイル名はインストールしたJDKファイル名に応じて、適宜、変更してください。

準備が整いましたらコマンドラインからセットアップを実行します。

前回の手順に沿って C:\HaxeToolkit\ にHaxe がインストールされている前提で解説します。

cd で C:\HaxeToolkit\haxe に移動します。
cd c:\HaxeToolkit\haxe

Androidoセットアップを実行する。
lime setup android

既に手元にあり、インストール不要なものについては n で応えていきます。

パスを訊いてきたら、予めメモ帳にコピーしておいたパスを見ながら各パスを入力します。

自分の環境においては
C:\Development\Android SDK(デフォルトのままEnter)
C:\Development\Android NDK(デフォルトのままEnter)
C:\Program Files\Java\jdk1.8.0_131(貼り付けてEnter))
で完了させました。

コマンドプロンプトからのインストールが終了したら、Windowsシステム環境変数で ANDROID_HOME、JAVA_HOME、adb と ddms までのパスを通します。

PCアイコンを右クリック、プロパティ、システムの詳細設定、環境変数と進み、システム環境変数で新規、変数名を ANDROID_HOME として、変数値を C:\Development\Android SDK として OK をクリック。

再度、新規で、変数名を JAVA_HOME として、変数値を C:\Program Files\Java\jdk1.8.0_131 として OK をクリック。

同じくシステム環境変数で Path をダブルクリック、編集で C:\Development\Android SDK\platform-tools;C:\Development\Android SDK\tools;C:\Program Files\Java\jdk1.8.0_131\bin を追加します。

各パスは ; で区切られていなければなりません。最後のパスの後ろには ; は付ける必要はありません。


adb(adb(Android Debug Bridge)は、平たく言うと、コンピューターとアンドロイド端末を接続してコマンドラインから通信を行う際に必要となるツールで、上記の手順でインストールした場合、C:\Development\Android SDK\platform-tools の中に含まれています。
ddms(Dalvik Debug Monitor Service)は、平たく言うと、デバッグを行う際に必要となるツールで、上記の手順でインストールすると C:\Development\Android SDK\tools の中に含まれています。


Androidのセットアップが完了したら、とりあえずコンピューターを再起動させます。

その後、作成済みのサンプルプロジェクトの PiratePig を Android でデバッグしてみます。

アンドロイド端末の開発者向けオプションでデバッグを有効にします。

アンドロイド端末の「設定」、「端末情報」、または「タブレット情報」とタップしていき、「ビルド番号」を7回タップすると「開発者オプション」の項目が表示されるので、その中からUSBデバッグを有効にします。

コンピューターとアンドロイド端末をUSB接続します。

コマンドプロンプトから cd で PiratePigフォルダ内に入り
cd PiratePig

下記のコマンドを実行します。
lime test android

しまらくコマンドライン上でプログラムが走り、アンドロイド端末側に PiratePig の画面が表示されればデバッグ成功です。
Debug
アプリ容量にもよるとは思いますが、実機デバッグなら、もっと快適かと思っていましたが、案外、そうでもないみたいです。

もし何らかのエラーが表示されてしまった場合は、C:/Users/ユーザ名/ 内に作成されている hxcpp_config.xml ファイル内の Android SDK、Android NDK、JDK のパスを正しいパスに書き換えてみてください。

64bit版の Android NDK でもエラーを出さずに処理が行える方法がありましたらコメントをお願いします。



コメント(0)