HSP dishの使い方で一番苦労するのがここの設定だろうと思う
この記事ではHSPソースのコンパイルからアプリ生成、androidへの転送までを、プログラミングマニュアルと自分の設定を見比べながら紹介して行こうと思う
まず絶対目を通さないといけないのが
HSP3Dish android(NDK)版プログラミングガイド
HSP3Dish android(NDK)版プログラミングガイド
大体はこれ通りにやる。
「2.環境準備」に書いてある通り
①androidSDK =installer_r20.0.3-windows.exe
②JDK =jdk-6u37-windows-i586.exe
③Android NDK =android-ndk-r8b-windows.zip
④Apache Ant =apache-ant-1.8.4-bin.zip
をインストールする。
ところがここで、正しい方法でインストールしないと、後でこんがらがって大変になる。
ここが鬼門。なのでここを重点的に解説しようと思う。
まず①だが、これはプログラミングガイドでは
推奨フォルダは、「c:\android\android-sdk~」です。
と書いてあるが私の場合は
「C:\Users\GPGPU\AppData\Local\Android\android-sdk」
にインストールした。これは標準設定のままのディレクトリである。
このため HSP3Dish helper のSDKフォルダには「C:\Users\GPGPU\AppData\Local\Android\android-sdk」
を指定した。
次に②だが、まずJDKは32bitと64bitの両方がある。OSが64bitでもここは32bitJDKをインストールする。
また更に32bitJDKはJDK6と7がある。
最新のJDK7ではファイル著名でまずいことになる。
なのでここはあえて古いJDK6をインストールしないといけない。
ここでもし64bitJDKもインストールしたかったら32bitJDKの後にする。
ということでHSP3Dish helperのJAVAフォルダは「C:\Program Files (x86)\Java\jdk1.6.0_37」
を指定する。
ちなみに64bitOSでは「Program Files」と「Program Files (x86)」両方のフォルダ内に
「JAVA\jdk1.6.0_37」が存在するので混同しやすいのだが、ここは必ず「Program Files (x86)」のほうの「jdk1.6.0_37」フォルダを指定する。
③はインストールと言うより解凍する。
これはプログラミングガイド同様に「C:」に「android」フォルダを作成し、そこに解凍すればいい。
なので私はHSP3Dish HelperのNDKフォルダに「C:\android\android-ndk-r8b」を指定した。
もちろん「C:\android\android-ndk-r8b」の階層内はこういうファイル達があることを確認する。
よく解凍時に、無駄に解凍ファイル名を自動作成し、同じ名前を二重にされてしまうことがあるので、そうなっているとandroid-ndk-r8bの読み込みエラーが起きてしまう。
④apache-ant-1.8.4も解凍するだけ。
HSP3Dish Helperのantフォルダは「C:\android\apache-ant-1.8.4」
最後にHSP3Dish Helperのプロジェクトは「C:\android」を指定する。
さて、ここまででHSP3Dish Helperの階層設定は完了。
次に先ほどインストールしたandroid SDK (C:\Users\GPGPU\AppData\Local\Android\android-sdk\SDK Manager.exe)を起動し、
必ず「Tools」「Android 4.2.2 (API 17)」はチェックを入れて必ずインストールするように。
あとはプログラミングガイドの「5.新規プロジェクトの作成」「6.プロジェクトのビルド」通りに行えばいい。
ここは人によって大きく手順が異なることはないので、解説は省略する。
ここまで来て、初めてアプリの生成ができるはずである。
ここまで来て、初めてアプリの生成ができるはずである。
こうしてコンパイルが通り、正常にアプリの生成が行われapkファイルが作られたとしよう。
そのapkファイルはC:\android\プロジェクト名\binの中に プロジェクト名-debug.apkという名前で保存されている。
これをSDカードなどにコピーしてスマホに転送してインストールするのも良いが、もう少し楽な方法がある。
プログラミングガイド「8.実機への転送と実行」によると
プロジェクトのビルドが完了したら、androidの実機に転送して確認することが可能です。 (エミュレータ上での実行は現在まだサポートされていません)
androidの実機をUSBで接続し、OSから認識されている状態で「転送」ボタンを押すことで、ビルド済みのapkファイルを転送(インストール)します。
ということらしい。
スマホへの転送だが、ここではもう2、3つ、ある手順が必要になる。
私の場合はMOTOROLA PHOTON ISW11Mであったのでandroid SDKの2.3.3にチェックを入れインストール。これはスマホのandoridバージョンに対応したところにチェックを入れインストールする必要がある。
そして「MotoHelper_2.1.40_Driver_5.5.0.exe」といったような、スマホのドライバをインストールする必要がある。
これはメーカーのホームページに行けば大抵落とすことができる。
これをインストールしたら、スマホとパソコンをUSBでつなぎ、スマホの設定から「アプリケーション」→「提供元不明のアプリ」にチェックを入れる。
これで、HSP3Dish Helperで「転送」ボタンを押せば、USB経由にapkファイルを転送し、自動でインストールしてくれる。
そして肝心のデバッグだが、私の環境ではアプリがエラーを吐くことはなく、エラーの時、画面が黒くなりアプリが終了するという現象が発生した。
私の体験した一番多かったエラーの原因として、サウンドファイルの格納間違いがあった。
プログラミングガイドにも書いてあるが、「サウンドのファイルは必ず、assetsフォルダに入れるようにしてください。」
とのことだ。
よって、C:\android\プロジェクト名\assets にwaveファイルを入れなければならない。
Dishが発表されてかなり経つが、自分の備忘録も兼ねて、とりあえず
androidアプリを作成できる環境を作るところまでの説明を記事にしてみた。
そしてついに本日mac OSの環境が手に入ったので、今日からiPhoneアプリの開発を自分の家でできるようになった。
これもなにか分かり次第記事にしていこうと思う。