2011/02/06
FreeBSD の Android 開発環境
最近、猫も杓子もスマートフォンで再来年にはシェアが 50% を超えると言われてる。
つー訳でおいらもミーハーに Android 開発をやって見たくなり、とりあえず開発環境をしらべて見た。 と言ってもいつもの如く FreeBSD & Eclispe使いたく無い なので偉く苦労するはめに。
Android の SDK は Google が公開している。
http://developer.android.com/sdk/index.html Linux 版があるので動かしてみた。
ダウンローダみたいのは起動したが Linux とは認識されずダウンロード出来ない (;_;) /blog/20110206/android-sdk-linux.png
赤い×印が... で、ググってたら bsdroid なる物が有志で移植されてるらしいのを見付けた。
http://bsdroid.org/tiki-index.php ここから AOSP-2.2-20100709-i386, 14Mb を落してくる。
GUI でもできるけど基本 CUI でやる。
BSDroid.INFO に従ってまずは環境設定。
AVD(AndroidVirtualDevice)を作る。
エミュレータの起動。起動が凄く重い。Core2Duoで2分かかる。
↓2分...
adb サーバを起動する。adbはデバッガらしい。
プロジェクトを作る。
インストールを行うにはリリース用の鍵が必要なので keytool で作る。 パスワードは "android" でないといけない。 変更できると思うが設定の場所がよく分からん。
メインクラスに HelloWorld 出力コードの修正。
projects/sample/src/com/sample/test/HelloWorld.java:
package com.sample.test;
import android.app.Activity;
import android.os.Bundle;
import android.widget.TextView;
public class HelloWorld extends Activity
{
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
TextView disp = new TextView(this);
disp.setText("Hello world!");
setContentView(disp);
}
}
やっとコンパイルとインストール。 が、このままコンパイルするとこんなエラーが出る。
< ?xml version="1.0" encoding="utf-8"?>
さらに、コンパイル時に tools/ant が無いと言われたら tools/ant を
http://bsdroid.org/tiki-index.php
の別のアーカイブから探してコピーする。
後は、エミュレータへのインストールまで ant がやってくれる。
実行してみる。
動いた!!
一応、これで最低限の開発環境が出来た。
でも実機持って無いんだよねオレ... orz
参考にしたページ:
http://d.hatena.ne.jp/isher/20100928/1285616799
http://blog.goo.ne.jp/quamtacq/e/416f3335540cee9e50b90dee47688bb4
つー訳でおいらもミーハーに Android 開発をやって見たくなり、とりあえず開発環境をしらべて見た。 と言ってもいつもの如く FreeBSD & Eclispe使いたく無い なので偉く苦労するはめに。
Android の SDK は Google が公開している。
http://developer.android.com/sdk/index.html Linux 版があるので動かしてみた。
ダウンローダみたいのは起動したが Linux とは認識されずダウンロード出来ない (;_;) /blog/20110206/android-sdk-linux.png

赤い×印が... で、ググってたら bsdroid なる物が有志で移植されてるらしいのを見付けた。
http://bsdroid.org/tiki-index.php ここから AOSP-2.2-20100709-i386, 14Mb を落してくる。
GUI でもできるけど基本 CUI でやる。
BSDroid.INFO に従ってまずは環境設定。
$ setenv ANDROID_SDK_ROOT /opt/android-AOSP-2.2-i386-distro-20100709 $ setenv SDK_UPDATER_URLS http://bsdroid.org/でツール起動して更新パッケージを全部落す。
$ tools/android update sdk -u
AVD(AndroidVirtualDevice)を作る。
$ tools/android list target Available Android targets: id: 1 or "android-AOSP" Name: Android AOSP (Preview) Type: Platform API level: AOSP Revision: 20100709 Skins: WQVGA432, HVGA (default), WVGA854, WQVGA400, QVGA, WVGA800 $ tools/android create avd --name test --sdcard 64M --target 1状況確認。
$ tools/android list avd Available Android Virtual Devices: Name: test Path: /home/xxxx/.android/avd/test.avd Target: Android AOSP (Preview) (API level AOSP) Skin: HVGA Sdcard: 64M
エミュレータの起動。起動が凄く重い。Core2Duoで2分かかる。
$ tools/emulator -avd test


adb サーバを起動する。adbはデバッガらしい。
$ tools/adb fork-server server $ tools/adb start-server
プロジェクトを作る。
$ tools/android create project -t 1 -p projects/sample -k "com.sample.test" -a HelloWorldmainのソースとインストールまでできる build.xml が生成される。
$ ls -1 projects/sample/ AndroidManifest.xml bin/ build.properties build.xml default.properties libs/ local.properties res/ src/
インストールを行うにはリリース用の鍵が必要なので keytool で作る。 パスワードは "android" でないといけない。 変更できると思うが設定の場所がよく分からん。
$ cd ~/.android/ $ keytool -genkey -v -keystore debug.keystore \ -alias androiddebugkey -keyalg RSA \ -validity 10000 -dname "CN=Android Debug,O=Android,C=US" passwd: android
メインクラスに HelloWorld 出力コードの修正。
projects/sample/src/com/sample/test/HelloWorld.java:
やっとコンパイルとインストール。 が、このままコンパイルするとこんなエラーが出る。
…/projects/sample/build.xml:78: For 'AOSP' SDK Preview, attribute minSdkVersion in AndroidManifest.xml must be 'AOSP'よく分からんがググって出て来た設定を projects/sample/AndroidManifest.xml に追加。
さらに、コンパイル時に tools/ant が無いと言われたら tools/ant を
http://bsdroid.org/tiki-index.php
の別のアーカイブから探してコピーする。
…/projects/sample/build.xml:78: Rules directory '…/tools/ant' is missing.
後は、エミュレータへのインストールまで ant がやってくれる。
$ cd projects/sample $ ant installエミュレータの画面を確認すると HelloWorld がアプリに追加されている。


でも実機持って無いんだよねオレ... orz
参考にしたページ:
http://d.hatena.ne.jp/isher/20100928/1285616799
http://blog.goo.ne.jp/quamtacq/e/416f3335540cee9e50b90dee47688bb4
この投稿へのコメント

コメント・フォーム