Googleの中の人が作ったGoogle I/O用のAndroidアプリ iosched がオープンソースで公開されているのですが、Androidアプリを開発する時に非常に参考になるので(Table対応したバージョンから難解になったのがネックですが)紹介したいのですが、ビルドするまで少し作業が必要なのでダウンロードしてビルドするところまで手順をメモっておきます。
Mercurialをインストールする
hg clone https://code.google.com/p/iosched/
と書いてあって、svnやgitではなくhgなのでMercurialが必要みたいです。
ということで、brewでさくっと入れようかなーと思ったけど何か嫌な予感(今思えば今回に限ってなんで嫌な予感を感じたか不思議でしょうがないけど)がしてググったらbrewでMercurialを入れるのはメンドそうなので素直にパッケージをインストールしちゃいましょう。
ダウンロードはこちらからMacのバージョンに合ったファイルをダウンロードしてください。
ダウンロードしたzipファイルを解凍して、mpkgファイルをダブルクリックしてインストールしてください。
インストールできたら、ターミナルからhgと入力して以下のように出ればOKです。
$ hg Mercurial - 分散構成管理ツール 基本コマンド: add 指定ファイルの追加登録予約 annotate ファイル行毎のリビジョン情報表示 clone 既存リポジトリの複製 commit 指定ファイルないし全ての変更内容のリポジトリへの記録 diff 作業領域全体(ないし指定ファイル)の差分抽出 export 1つ以上のリビジョンに対するヘッダおよび変更内容の出力 forget 次回コミットにおける指定ファイルの登録除外 init 指定されたディレクトリでの新規リポジトリの作成 log リポジトリ全体ないしファイルの変更履歴の表示 merge 作業領域の内容と他のリビジョンのマージ pull 指定リポジトリからの変更履歴の取り込み push 指定リポジトリへの変更履歴の反映 remove 次回コミットにおける指定ファイルの登録除外 serve 独立したウェブサーバの実行開始 status 作業領域のファイル操作状況の表示 summary 作業領域状態の概要表示 update 作業領域の内容更新(ないしリビジョンの切り替え) 全コマンドの一覧は "hg help" で、 コマンド詳細は "hg -v" で表示されます
今回はcloneするだけなので他のコマンドはとりあえず置いておきましょう。
Eclipseでインポートする
ちょっとその前に確認
もし、最近ADTやAndroid SDKをアップデートしていない人は最新バージョンに上げておきましょう。4.0も出ましたし。
Updating the ADT Plugin でADTをアップデートしたら、
もし、4.0とか3.2とかインストールしていなければ、とりあえず全部入れておきましょう。
android-support-v4.jarを追加する
最近のAndroidアプリは同一のソースコード(アプリ)でタブレットでもスマートフォンでも動くようにFragmentという仕組みを使って開発する必要がでてきたり、タブレットに対応する必要がないアプリでも来たるICS(Android 4.0)に備えて(もうSDKは出てますが)Fragmentに慣れておくべきとGoogleの中の人が仰られていたりで、別途、勉強する必要があるのですが、ここで説明しだすと量的に無理があるので今回はとりあえず飛ばして、ビルドするところまでいきましょう。
プロジェクトのlibsディレクトリにandroid-support-v4.jarというライブラリを置いてビルドパスを通す必要があります。
android-support-v4.jarはAndroid SDKのディレクトリのextras/android/compatibility/v4/にありますので、Eclipseのioschedプロジェクトのlibsディレクトリにコピーして、右クリック > Build Path > Add to Build Pathでビルドパスに追加します。
これでコンパイルエラーがだいぶ減るんですが、まだエラーが残ってます。
libGoogleAnalytics.jarを追加する
ioschedはGoogle Analytics SDK for Androidのサンプルコードも含んでいるらしく、そのライブラリが必要です。
http://code.google.com/intl/ja/mobile/analytics/download.html からGoogle Analytics SDK for Androidの GoogleAnalyticsAndroid_1.3.1.zip をダウンロードして、解凍するとlibGoogleAnalytics.jarがあります。
android-support-v4.jarと同様に、libGoogleAnalytics.jarをEclipseのioschedプロジェクトのlibsディレクトリにコピーして、右クリック > Build Path > Add to Build Pathでビルドパスに追加します。
これでコンパイルエラーがなくなりました。
あとは
ソースコードを読んでみましょう。Googleの中の人が作ったAndroidアプリのソースコードなんて、そうそう読むチャンスなんてないと思うので非常に貴重な経験と多くの発見ができると思います。冒頭でも書きましたがタブレット対応のために難解になったのがアレなんですが・・・
易しい所だと、res/配下のファイルの命名規則なんかは真似すると整理できていいと思います。layoutファイルはactivity_やfragment_やlist_item_などのプレフィックスを付けるとか。drawableの定義の仕方とか。小さな所から真似ていけばいいかなと思います。
ソースコードの方だと、パッケージ設計やクラス設計、継承の使い方とか。ダッシュボードUIの作り方とか。ActionBarの実装とか。
ICS(Android 4.0)でまた色々変わっちゃうとは思うのですがね(ぜぇぜぇ
おまけ
タブレット対応前のシンプルなioschedはどこにいった?
ググったらunderhilllabsさんが古いioschedをがっつりコピーしてgithubに突っ込んでいてくれてたおかげで発見できました。けれど、.svnがそのままコミットされていたりいろいろ残念な感じだったのでforkしてゴミを削除したりapi versionを修正したりしときました。
https://github.com/gabu/iosched2010 からcloneしてください。Android初めてという方は、こっちの方がタブレット対応する前のAndroid 2.1向けのシンプルなioschedとなっておりますのでソースコードも読みやすいかと思います。
ICS(Android 4.0)でどっちみちFragmentは避けて通れないという噂もあるけど(げふんげふん
ではでは!
Androidタブレットアプリ開発ガイド Android SDK 3対応 (Smart Mobile Developer)
- 作者: 井形圭介,上中正統,尾古豊明,加藤勝也,小林慎治,瀬戸健二,高木基成,日高正博,夜子まま
- 出版社/メーカー: 翔泳社
- 発売日: 2011/09/16
- メディア: 大型本
- 購入: 4人 クリック: 156回
- この商品を含むブログ (7件) を見る