首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 移动开发 > Android >

获取Android SDK 源代码并在Eclipse中联系关系查看的方法-转

2013-09-11 
获取Android SDK 源代码并在Eclipse中关联查看的方法--转在Google搜索“Android Eclipse 源代码”得到的结果

获取Android SDK 源代码并在Eclipse中关联查看的方法--转

在Google搜索“Android Eclipse 源代码”得到的结果并不合适,因为Google的Eclipse Android开发插件已经更新到了ADT 8.0.1.相应的lib关联java源代码的方式也变了。?
以下是获取Android的Java源代码并在Eclipse中关联的最新操作方法和步骤:?
1.首先下载Android的SDK安装文件:http://dl.google.com/android/android-sdk_r08-windows.zip?
然后解压到:E:\Java\android\android-sdk-windows,运行目录中的SDK Manager.exe,下载好Android不同版本的API包。?

2.然后下载或在线安装Eclipse插件ADT,?
安装包地址为:http://dl.google.com/android/ADT-8.0.1.zip?
在线安装地址:https://dl-ssl.google.com/android/eclipse/?
来源:ttp://developer.android.com/sdk/eclipse-adt.html?

2.ADT插件安装好之后,下载我已经打包好的Android 2.3(gingerbread)的java源代码压缩包:?
下载地址:http://lizongbo.googlecode.com/f ... erbread_javasrc.zip?
来源:http://code.google.com/p/lizongbo/downloads/list?
下载后复制到E:\Java\android\javasrc。?

3.Android的Java源代码压缩包下载好之后,在Eclipse中设置好SDK配置:?
操作步骤为:主菜单->Window–>Preferences–>选择Android,SDK Location设置为:E:\Java\android\android-sdk-windows,然后点右下角的Apply来生效。?

4.开始进行关联Android的源代码,在Eclipse中新建一个Android工程,选中工程,主菜单 –>Project–>Properties–>选择Android,Project Build Target选中Android 2.3。?
然后再点左边的“Java Build Path”,切换到 Libraries 面板,展开 Android2.3 这个lib,点击android.jar的Source attachment,再点Edit.在对话框中点“External File”,选择E:/Java/android/javasrc/android_gingerbread_javasrc.zip,点OK进行确认。这样就把Android的java代码关联好了。?

5.在同一个工程中,选中工程,主菜单–>Project–>Properties–>选择 Android,Project Build Target分别选择Android1.5,Android1.6,Android2.01,Android2.1- update1,Android2.2,按上面第四步的操作重复设置关联。?
以后在任何Android工程里按住Ctrl用鼠标点击Java类名都可以浏览到对应的java源代码。?
Android各个版本对应的源代码为:?
Android1.5对应android_cupcake_javasrc.zip?
Android1.6对应android_donut_javasrc.zip?
Android2.01和Android2.1-update1对应的是android_eclair_javasrc.zip?
Android2.2对应android_froyo_javasrc.zip?
Android2.3对应android_gingerbread_javasrc.zip?

6.在Eclipse配置好源代码关联之后之后的信息会存储在:?
E:\lizongbo\workspacenew\.metadata\.plugins\org.eclipse.core.resources\.root\.indexes\properties.index?
E:\lizongbo\workspacenew\.metadata\.plugins\org.eclipse.jdt.core\variablesAndContainers.dat?

同时记录Android的java源代码压缩包制作方法如下:?
1.先在远程的Ubuntu Linux服务器(是Linode VPS)上安装以下组件(JDK1.6已经安装好了):?
sudo apt-get install git-core gnupg flex bison gperf libsdl-dev libesd0-dev libwxgtk2.6-dev build-essential zip curl libncurses5-dev zlib1g-dev?
信息来自Android官方:http://source.android.com/source/download.html?
2.运行 sudo apt-get install lib32readline5-dev?
3.安装Repo脚本:?
我懒得配PATH了,于是直接安装到了/usr/local/bin。?
root@lizongbo.com:~/bin#?cd /usr/local/bin?
root@lizongbo.com:/usr/local/bin#?ls?
geoip-lookup?
root@lizongbo.com:/usr/local/bin#?curl?http://android.git.kernel.org/repo?>/usr/local/bin/repo?
% Total? ? % Received % Xferd??Average Speed? ?Time? ? Time? ???Time??Current?
Dload??Upload? ?Total? ?Spent? ? Left??Speed?
100 17412??100 17412? ? 0? ???0??27517? ?? ?0 –:–:– –:–:– –:–:– 31148?
root@lizongbo.com:/usr/local/bin#?chmod a+x /usr/local/bin/repo?
注意在下载该脚本的时候,可能会遇到服务器出错,下载的内容不对,运行命令的时候会提示错误“syntax error near unexpected token `newline’”。?
root@lizongbo.com:/usr/local/bin#?repo init -u git://android.git.kernel.org/platform/manifest.git -b cupcake
/usr/local/bin/repo: line 1: syntax error near unexpected token `newline’?
/usr/local/bin/repo: line 1: `<!DOCTYPE HTML PUBLIC “-//IETF//DTD HTML 2.0//EN”>’?
root@lizongbo.com:/usr/local/bin#?more repo?
<!DOCTYPE HTML PUBLIC “-//IETF//DTD HTML 2.0//EN”>?
<html><head>?
<title>500 Internal Server Error</title>?
</head><body>?
<h1>Internal Server Error</h1>?
<p>The server encountered an internal error or?
misconfiguration and was unable to complete?
your request.</p>?
<p>Please contact the server administrator,?
webmaster@kernel.org?and inform them of the time the error occurred,?
and anything you might have done that may have?
caused the error.</p>?
<p>More information about this error may be available?
in the server error log.</p>?
</body></html>?
从内容看是服务器出错了,因此需要重新下载脚本.?
4.建立mydroid目录,按代码分支下载对应版本的Android完整的源代码,比如下载Android2.3的代码:?
root@lizongbo.com:~/mydroid#?mkdir gingerbread?
root@lizongbo.com:~/mydroid#?cd gingerbread/?
root@lizongbo.com:~/mydroid/gingerbread#?repo init -u git://android.git.kernel.org/platform/manifest.git -b gingerbread?
root@lizongbo.com:~/mydroid/gingerbread#?repo sync?
Android1.5的代码分支:?
root@lizongbo.com:~/mydroid/cupcake#?repo init -u git://android.git.kernel.org/platform/manifest.git -b cupcake?
root@lizongbo.com:~/mydroid/cupcake#?repo sync?
Android1.6的代码分支:?
root@lizongbo.com:~/mydroid/donut#?repo init -u git://android.git.kernel.org/platform/manifest.git -b donut?
root@lizongbo.com:~/mydroid/donut#?repo sync?
Android2.0.1和2.1的代码分支:?
root@lizongbo.com:~/mydroid/eclair#?repo init -u git://android.git.kernel.org/platform/manifest.git -b eclair?
root@lizongbo.com:~/mydroid/eclair#?repo sync?
Android2.2的代码分支:?
root@lizongbo.com:~/mydroid/froyo#?repo init -u git://android.git.kernel.org/platform/manifest.git -b froyo?
root@lizongbo.com:~/mydroid/froyo#?repo sync?

如果遇到代码下载速度太慢,可以指定hosts,hosts配置不住为:?
root@lizongbo.com:~/mydroid/gingerbread/.repo/projects#?nslookup?
> android.git.kernel.org?
Server:? ?? ?? ?72.14.188.5?
Address:? ?? ???72.14.188.5#53?
Non-authoritative answer:?
android.git.kernel.org??canonical name = android.git.geo.kernel.org.?
android.git.geo.kernel.org? ?? ?canonical name = android.git.us.kernel.org.?
Name:? ?android.git.us.kernel.org?
Address: 149.20.20.141?
Name:? ?android.git.us.kernel.org?
Address: 204.152.191.45?
> exit?

root@lizongbo.com:/etc#?vi hosts?
204.152.191.45 android.git.us.kernel.org?
204.152.191.45 android.git.kernel.org?

网上有文章介绍使用提取java文件并打包的pytho脚本可以生成源代码包,参考:?

http://android.opensourceror.org/2010/01/18/android-source/


我的异常网推荐解决方案:The server encountered an internal error () that prevented it from fulfilling this request.,http://www.myexception.cn/java-web/317.html

热点排行