Android NDK 開発環境の構築
今日はAndroidアプリの開発環境を構築します。
言語の価値≒開発環境と言われることもあるので、しっかりと選んでいきます。
NDKを使う開発環境構築
自分の作成したいアプリはAndroidアプリで、開発環境の要件としては
- C++ & NDKを使用可能
- Windowsでも使用可能
- Vimのキー操作が可能
といったところです。
以前にEclipse+NDKで開発したことがあったのですが、今はAndroid Studioというい選択肢もあるようで。
新しいものを使ってみるのもいいことだと思うので、今回はAndroid Studioを採用することにします。
Android Studioのインストール
こちらから Windowsようのインストーラをダウンロード。
現時点でのAndroid Studioのバージョンは1.4です。ここからはガイド に従ってインストールを進めます。
まずはインストーラを実行。すべてデフォルトのままインストール。
JDK7が必要とのことですが、自分のPCには既にインストール済みだったのでここはスキップ。インストールを完了し、Android Studioを起動。初回起動だからなのか、起動に数分間かかりました。
起動するとSetup Wizardが表示されます。以下をインストールします。
- Tools > Android SDK Tools
- Tools > Android SDK Platform-tools
- Tools > Android SDK Build-tools (最新のバージョンのもの)
- Android X.X > SDK Platform (X.Xは最新のバージョンのもの)
- Android X.X > エミュレータのシステムイメージ (ARM EABI v7a System Imageなど)
- Extras > Android Support Repository
- Extras > Android Support Library
- Extras > Google Repository
- Extras > Google Play services
初めてSDK Managerを起動すると、必要なものは選択状態になっているようです。
私はそのままAndroid6.0のものをインストールすることにしました。
Hello Worldアプリ作成
とりあえずは、Hello Worldアプリというか、ウィザードがデフォルトで作成するアプリの
ビルドを試してみます。
Setup WizardでStart a new Android Studio projectを選択し、
デフォルト設定のまま進めます。
Start a new Android Studio projectを選択
デフォルトのままNext
これもデフォルトのままNext
Blank Activityを選択してNext
デフォルトのまま、Finish
ウィザードを完了すると下のような画面が現れます。
何も編集せずに、とりあえずアプリケーションをビルド&実行します。
Android SDKのインストールでAndroid6.0をインストールしているので、 Android virtual deviceにはNexus 5 API 23 x86を選択しました。
これで、アプリが起動するかと思いきや、エミュレーターの速度が異常に遅い!!
それも実用不可能なレベルで!
で、色々ネットで調べると、高速化の手段があるようで。
Android エミュレーターの高速化
エミュレーターの高速化には、Intel x86 Emulator Acceleratorを使用します。
SDK Managerにて、Extra > Intel x86 Emulator Accelerator(HAXM installer)を選択し、 インストールを実行します。
1ではインストーラーがダウンロードされるだけなので、インストーラーを実行します。
なお、インストーラーは
C:\Users\ユーザー名\AppData\Local\Android\sdk\extras\intel\Hardware_Accelerated_Execution_Manager\intelhaxm-android.exe にダウンロードされています。(1のヒントにダウンロードしたフォルダ名の記載あり)あとは、エミュレーターの作成です。私の場合、最初からインストールされているNexus 5のCPUがx86ということもあり、 これを複製して、設定を変更することにしました。
AVD Managerを起動します。
Nexus 5を右クリックしてDuplicateを選択します。
エミュレーターの設定画面が現れます。 Show Advanced Settingsをクリックして詳細設定を行います。 今回変更するのは次の2点です:
- Use Host GPUをオン
- RAMを512MB以下に設定
- もう一度、アプリを実行してみます。
高速化がうまく働いているようなら、コンソールに次のようなメッセージが表示されます。
HAXM is working and emulator runs in fast virt mode
まとめ
これでアプリをビルドをできるようになりました。
エミュレーターは高速化してますけど、それでも少し遅さを感じてしまいます。
業務でアプリを開発されている方は、どうされているのかと思ってしまいます。