Ubuntu への JDK, Android SDK のインストール


今まで Windows 環境で Android 開発をしてきたのですが、最近ふと思い立って Linux(Ubuntu/Xubuntu) で環境を構築してみました。この記事では、IDE をインストールする前に必要となる JDK と Android SDK のインストールについて記述します。 (ADT Bundle を使わず、 JDK/SDK と IDE を個別にインストールすることを想定しています。)

JDK のインストール

JDK は頻繁にアップデートされるので、パッケージ管理を使いたいと思って調べたところ、 Oracle Java (JDK) 6 / 7 / 8 Installer PPA : “WebUpd8” team で PPA が提供されていました。この PPA は、 Oracle のインストーラをダウンロードして実行するようになっています。
以下のように導入します。途中、Oracle ライセンスへの同意が求められますので同意して進めます。

最後の行で、インストールが正常に行われたか確認しています。
以上の作業で、私の環境では /usr/lib/jvm/java-7-oracle にインストールされました。

Android SDK のインストール

Android SDK のインストールは、 Android SDK | Android Developers に従って進めました。

  1. まず、 SYSTEM REQUIREMENTS の Linux 欄に以下の記述があります。

    64-bit distributions must be capable of running 32-bit applications.

    64-bit ディストリビューションは、 32-bit アプリケーションを実行できなければならない。

    私の環境は 64bit-Xubuntu なので、これに対応するため ia32-libs をインストールします。(32bit OS では不要です。)
    sudo apt-get install ia32-libs
    私の環境は 64bit-Xubuntu なので、これに対応するため lib32stdc++6 と lib32z1 をインストールします。(32bit OS では不要です。)

    ※注 2014/10/15) Ubuntu 14.04 以降では、ia32-libs をインストールできません。(Dan Dar3: Android SDK Tools on Ubuntu 14.04 beta x64)

  2. 次に DOWNLOAD FOR OTHER PLATFORMS から Linux 32 & 64-bit のパッケージをダウンロードします。(/home/hoge/Downloads/android-sdk_r21.1-linux.tgz とします)
    ※ 現在は、 Eclipse 環境も含めた ADT Bundle というパッケージが用意されていますが、本記事では、IDE を別途インストールする事を想定しています。
  3. ホームディレクトリに適当なディレクトリ (ここでは Development とします) を作成してそこに展開します。

  4. tools, platform-tools ディレクトリにパスを通しておくと便利です。 ~/.bashrc に以下を追加します。

    ※ 2014/02/14 修正: 現在では adb は platform-tools ディレクトリに移動されれているので、パスに platform-tools を追加しました。

    ※ 2014/05/28 補足: platform-tools は、Android SDK Platform-tools をインストールすると作成されます。

    パスを適用するために、以下を実行します。

  5. SDK をアップデートします。(全てのプラットフォーム用の SDK がダウンロードされますので、かなり時間を要します。)

    ※ 2014/05/28 補足: 現在は多くのプラットフォームが登録されていて、全てのアップデートを実行するのは現実的ではありません。この操作は飛ばして、次の項目へ進み、「SDK マネージャ」を起動して必要なものだけインストール&アップデートした方が良いと思われます。

  6. SDK マネージャを起動して確認してください。(私の環境では、ソースがダウンロードされていなかったので追加でダウンロードしました。)

  7. その他の android コマンドについては、–help オプションで確認してください。

この後は、Eclipse や IntelliJ 等好みの IDE をセットアップして開発を始めることができます。

[参考サイト]

[関連記事]

SDK Tools r21 のバグで大量の警告


LogCat の表示で以下のような大量の警告が出てしまいました。

Unexpected value from nativeGetEnabledTags: 0

自分のコードに問題があるのかとも思いましたが、他のプロセスからも出力されているようでした。nativeGetEnabledTags もよくわかりません。

こちらのサイトを見つけて、先の SDK アップデート (SDK Tools, Revision 21) のバグであることがわかりました。とりあえずの解決策としては、そこにあるようにフィルタを設定してログをカットするのが良いようです。

  1. Saved Fileters の一覧から、Session Filter や、自分で定義したフィルタをダブルクリックする (“+” をクリックして新規のフィルタを定義しても良い)
  2. by Log Message 欄に、”^(?!.*(nativeGetEnabledTags)).*$” を設定する。

以上で、不必要なログがカットされて見やすくなります。

[参考にしたサイト]
Stackoverlow:Unexpected value from nativeGetEnabledTags: 0

 

Eclipse の Window メニューに Android SDK / AVD Manager が表示されない時


先日、Eclipse を再インストールしてセットアップしたところ、Window メニュー内に Android SDK Manager, Android Virtual Device Manager が無いことに気づきました。

本来は、このように、Navigation の下に表示されるはずです。

しかし、今回インストールした Eclipse だとこのようなメニューです。もちろん、ADT はインストール済です。

SDK/AVD マネージャ自体は SDK をインストールしたフォルダから直接起動することができるので、致命的なことにはなっていないのですがやはり不便です。(デフォルトでは、Android SDK は、%USERPROFILE%android-sdks にあります。)

前から使っている PC は問題なく表示されているのですが、新しくインストールした PC では上記の問題が発生します。

丁度、Android 4.2 SDK が更新されて ADT も 21.0.0 に更新されたタイミングでしたので、ADT のデフォルトの設定が変わったのでは無いかと推測しています。

既存の ADT を更新した場合は設定を引き継ぐので問題無いのですが、新規にインストールすると、新しい設定になるので上記問題が発生するのではないかと思います。(なぜ、そのようなデフォルト設定になったのかは不明ですが)

この問題は、以下のように設定を修正することで解消できます。

  1. Window > Customize Perspective を開く
    Eclipse Window Menu
  2. Command Groups Availavility タブを開き、Android SDK and AVD Manager にチェックを入れる
    Command Groups Availavility

以上で、SDK/AVD Manager が Window メニュー内に表示されるようになります。