Help us understand the problem. What is going on with this article?

Android StudioでopenFrameworksをビルドする

More than 1 year has passed since last update.

Android アプリ開発初心者です。Eclipse でのビルドが上手く行かなかったので Android Studio を試してみました。

実行環境

  • OSX YOSEMITE 10.10.2
  • Android Studio 1.1.0 Build #AI-135.1740770
  • JRE 1.7.0_79-b15 x86_64
  • Android SDK Android 5.1.1(API22)。Android Studio と一緒に自動的にインストールされました。
  • Android NDK r9d
  • OF 0.9.0
  • Emulator Nexus_5_API_21_x86
  • Nexus7 Android Version 4.4.2

参考サイト

openFrameworks の公式チュートリアルに従いました。
openFrameworks/android.md at master · openframeworks/openFrameworks

以下、上記チュートリアルを適当に読み進めつつ躓いた箇所などを記します。

概要

openFrameworks と Android Studio は超簡単です。基本的には以下のステップになります。

  • Android Studio と Android SDK のインストール
  • Android NDK のインストール(r10b 以下)
  • openFrameworks のダウンロード
  • プロジェクトのインポート
  • NDK の設定
  • ビルド&ラン
  • サンプルを元にプロジェクトを作る

Android Studio と Android SDK のインストール

Arduino Studio を http://tools.android.com/download/studio/stable からダウンロードします。1.0 以上が必要です。最近の SDK が一緒にインストールされますが、Tools ➞ Android ➞ SDK Manager で使用する SDK のバージョンをカスタマイズできます。

SDK が付属してこなかった場合は、http://developer.android.com/sdk/index.html からダウンロードすることができます。

  • Android NDK のインストール(r10b 以下)

r10c だと不具合があるため、r10b を使用してください。今回はチュートリアルにリンクがある r9d を使用しました。 http://dl.google.com/android/ndk/android-ndk-r9d-darwin-x86_64.tar.bz2

openFrameworks のダウンロード

http://github.com/openframeworks/openFrameworks からダウンロードします。俺は http://openframeworks.cc/download の方に行ってdownload openFrameworks for eclipse をダウンロードしてしまい半日ほど無駄にしてしまいました。

プロジェクトのインポート

Android Studio の Welcome Screen で Import Project、または File ➞ Import Project を選択し、libs/openFrameworksCompiled/project/android ディレクトリの settings.gradleを指定します。色々言ってきますが全部OKでプロジェクトのセットアップを待ちます。
この時点でNDKのエラーが出ますが、次のステップで。

NDK の設定

同様にlibs/openFrameworksCompiled/project/android ディレクトリのlocal.propertiesを以下のように修正します。
ndk.dir=/path/to/the/ndk

俺の場合こんな感じです。
ndk.dir=/Users/***/***/android-ndk-r9d

local.propertiesを保存して Android Studio の Tools ➞ Android ➞ Sync Project with Gradle Files を選択してプロジェクトと再同期を行います(自分の環境では"Try Again" も "Gradle project sync failed"表示されなかった気がします)。

ビルド中に、何度か Android SDK が足りないと言われましたが、その度同意してインストールを繰り返せば OK かと思います。

ビルド&ラン

androidEmptyExampleの横にある再生ボタンを押して、うまく行くとビルドされ、Android デバイスやエミュレータで再生されるはずです。再生されたなら openFrameworks の設定は完了です。

実機テストに関しては以下のページを参考にさせて頂きました。
Android Studioで実機デバッグするには? | iDEA CLOUD/dev

サンプルを元にプロジェクトを作る

examples/androidにある androidEmptyExampleフォルダをコピーして、apps の中にサブディレクトリを作ってペースト(サンプルと同じディレクトリ構成にすること)。build.gradleファイルをandroidEmptyExampleからコピーしてペースト。libs/openFrameworksCompiled/project/androidにあるsettings.gradleを以下のように修正します。

// your projects go here
include 'examples:android:androidEmptyExample'
// Add your own projects like this:
// includeFlat 'apps:myApps:myAwesomeApp'
include 'apps:myApps:myFirstApp'

俺の環境ではincludeFlatという書き方ではビルドできませんでした。

まだ2、3個サンプルを試しただけですが、今のところ大丈夫そうです。

【4/22追記】

以下の4つのサンプルは Emulator、Nexus7 ともにデバイス上で再生できませんでした。API のせいかな?

  • androidCameraExample
  • androidOpenCVFaceExample
  • androidOpenCVExample
  • androidVibratorExample

androidSwipeExample は IDE 上でエラーになって転送ができませんでした。

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away