Eclipseで開発時にAndroid SDKのソースコードを見る方法について

110 views
Skip to first unread message

EGAWA Takashi

unread,
Oct 31, 2008, 12:44:53 AM10/31/08
to android-...@googlegroups.com
江川と申します。
Eclipse(ADT)を使ってAndroid Projectで開発している際に、デバッグなどの目的で
AndroidのJavaのソースコードを参照したいことがあると思いますが、どうしたら
効率がよいかちょっと悩み中です。
とりあえず私が現在やっている方法を書きます、もしもっといい方法がある!とか、
私はこうしてる、こうした方がいい、みたいなのがあれば教えていただけないでしょうか。

私が悩んだところは以下の2点です。

1. ディレクトリ構成

Repo(git)で取得したpublicリポジトリのディレクトリ構成だと同一の
(またはよく似た)Javaパッケージが別のProjectにも入っていたりするので、
ソースコードを手軽にアタッチすることが出来ません。
 なので、SDK部分のソースコードを見たくなったときは、そのソースのある
場所を探さなければならないというわずらわしさがあります。
最初はシンボリックリンクで何とかしようと思ったのですが、面倒すぎて
途中で挫折しました。現在は添付ファイルのようなrubyスクリプトを書き、
必要そうなJavaソースをSDKのホームディレクトリへコピーしています。

2. android.jarの中に含まれていないクラス

ZygoteInitやActivityThreadなどはpublicリポジトリにソースはありますが、
SDKのandroid.jarにはクラスが含まれていません。このようなものは
コンパイルタイムではEclipseにクラスとして認識されていないので
「型を開く(Open by Type)」などでも出てきません。
本家では、Eclipse上でJava Projectとして作成し、ビルドを通せ
みたいな投稿がありちょっとチャレンジしてみましたが、aidlやR.javaの
絡みなど、かなり面倒そうだったので挫折しました。
http://groups.google.com/group/android-developers/browse_thread/thread/c0fd3d1a7dd969c9/
多分アプリを作っている限りは、それらのクラスと直接依存するような
コードを書くことはないと思うので、実際にはあまり不便を感じないかも
しれません。
が、ランタイムでは、たとえば、デバッグモードで実行し
任意の場所で止め、コールグラフからActivityThreadなどのソースに
飛びたいことがあります。現状の私のやり方は、ソースが見れないと、
ソースのありかを求められるので、先ほどのスクリプトで取得した
ソースコードのディレクトリをexternal folderとして指定することで、
参照できるようにしています。

------------------------------------------
EGAWA Takashi <t.e...@gmail.com>

copy_sources.rb
Reply all
Reply to author
Forward
0 new messages