`

获取Android的Java源代码并在Eclipse中关联查看的最新方法

阅读更多

 

在Google搜索“AndroidEclipse 源代码”得到的结果并不合适,因为Google的EclipseAndroid开发插件已经更新到了ADT 8.0.1.相应的lib关联java源代码的方式也变了。
以下是获取AndroidJava源代码并在Eclipse中关联的最新操作方法和步骤:
1.首先下载AndroidSDK安装文件:http://dl.google.com/android/android-sdk_r08-windows.zip
然后解压到:E:/Java/android/android-sdk-windows,运行目录中的SDKManager.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插件安装好之后,下载我已经打包好的Android2.3(gingerbread)的java源代码压缩包:
下载地址:http://lizongbo.googlecode.com/files/android_gingerbread_javasrc.zip
来源:http://code.google.com/p/lizongbo/downloads/list
下载后复制到E:/Java/android/javasrc。

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

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

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

同时记录Androidjava源代码压缩包制作方法如下:
1.先在远程的Ubuntu Linux服务器(是Linode VPS)上安装以下组件(JDK1.6已经安装好了):
sudo apt-get installgit-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# curlhttp://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 -ugit://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.organd 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 -ugit://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 -ugit://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 -ugit://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 -ugit://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 -ugit://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.45android.git.us.kernel.org
204.152.191.45android.git.kernel.org

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

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

http://blog.michael-forster.de/2008/12/view-android-source-code-in-eclipse.html
Python下载地址:http://www.python.org/ftp/python/2.6.6/python-2.6.6.msi
但是在Android2.2和Android2.3的代码里,Android写一了一些mock的类,比如android.webkit.WebView,使用python脚本打包的话,会把mock的源代码打进去,而不是真正的源代码,
因此我根据python脚本写了个java程序来提取java文件过滤冗余的java代码并打包。
生成的java源代码压缩:android_cupcake_javasrc.zip,android_donut_javasrc.zip,android_eclair_javasrc.zip,android_froyo_javasrc.zip,android_gingerbread_javasrc.zip
目前在code.google.com上传了android_gingerbread_javasrc.zip,欢迎下载。

以下是各版本的Androidjavasource下载地址:

Android2.3:http://lizongbo.googlecode.com/files/android_gingerbread_javasrc.zip

Android1.5:http://lizongbo.googlecode.com/files/android_cupcake_javasrc.zip
Android1.6:http://lizongbo.googlecode.com/files/android_donut_javasrc.zip
Android2.1:http://lizongbo.googlecode.com/files/android_eclair_javasrc.zip
Android2.2:http://lizongbo.googlecode.com/files/android_froyo_javasrc.zip

 

 

本文转自:http://blog.163.com/cp7618@yeah/blog/static/7023477720110299746103/

分享到:
评论

相关推荐

    获取Android的Java源代码并在Eclipse中进行关联.doc

    ### 获取Android的Java源代码并在Eclipse中进行关联 #### 一、准备工作 为了能够顺利地获取Android的Java源代码并在Eclipse中进行关联,我们需要完成以下准备工作: 1. **下载并安装Android SDK**: - 访问[官方...

    在Eclipse里关联android源代码的三种方式

    通过以上三种方法,开发者可以在Eclipse环境中查看和调试Android系统的源代码,这不仅有助于理解Android系统的工作原理,还能为自定义系统组件和解决问题提供便利。在进行源代码关联时,根据个人的需求和习惯选择最...

    eclipse查看Android源代码

    本篇将详细介绍如何在Eclipse中查看Android源代码,以及相关知识点。 首先,我们需要下载Android的源代码。在本例中,提到的是针对`android-8`版本的源码,这对应的是Android 2.2 (Froyo)。你可以通过访问Android的...

    android4.1 关联eclipse 源代码

    本篇文章将详细介绍如何在Eclipse中设置和使用Android 4.1的源代码。 首先,你需要下载Android 4.1(API 16)的源代码。这通常通过使用Android开放源代码项目(AOSP)的Git仓库完成。访问AOSP官方网站...

    获取android源码及在eclipse中查看源码

    在安装好Eclipse并创建好Android项目后,接下来的步骤是将下载好的源代码关联到Eclipse中。以下以Android 2.3 (Gingerbread)为例,详细介绍如何进行操作: 1. **下载源码**: - 下载指定版本的源代码压缩包,如:`...

    android elcipse 源代码 2.1

    5. **关联源代码**:在Project Explorer中,右键点击项目,选择“Properties” -&gt; “Java Build Path” -&gt; “Source”标签页,然后添加Android SDK的src目录,这样就可以查看到源代码了。 通过查看Android 2.1的源...

    android4.0源代码

    通过关联这个源代码到Eclipse或Android Studio,开发者可以深入研究Android API的内部机制,调试问题,优化性能,甚至为Android系统做出贡献。这对于提升开发技能,解决复杂问题,以及创建高效能的应用程序都极其...

    android 2.2 源代码

    描述中提到“关联eclipse使用超爽”,这表明此压缩包可能包含了用于在Eclipse集成开发环境中(IDE)编译和调试Android 2.2源代码的必要文件和配置。Eclipse是当时非常流行的Android开发工具,它拥有ADT(Android ...

    Android4.4Eclipse关联源码

    在Android开发领域,熟悉操作系统内核以及应用层的源代码对于深入理解系统行为、优化性能以及进行定制化开发至关重要。本资源"Android4.4Eclipse关联源码"提供了Android 4.4(KitKat)的应用层源码,这对于开发者来...

    Android 4.1.2 SDK 源代码

    在Eclipse中直接引用Android 4.1.2 SDK源代码,开发者可以方便地查看源码,了解系统底层运作,这对于学习Android系统原理、调试系统级问题或进行定制化开发非常有帮助。同时,源代码的使用也便于开发者学习最佳实践...

    Eclipse android开发关联源码图文说明

    在Android开发过程中,有时我们需要深入理解系统的工作原理或者学习特定API的实现,这时查看源码就显得至关重要。本文将详细介绍如何在Eclipse环境下关联Android源码进行开发。 首先,我们需要获取Android不同版本...

    解决eclipse中查看android工程代码出现android.jar has no source attachment

    它实际上是Android SDK中的一个库文件,包含了Android API的所有公共类和方法,但默认情况下并不包含源代码。当Eclipse找不到源代码时,你将无法查看这些类的实现细节。 **步骤一:检查SDK源代码安装** 确保你已经...

    android游戏 源代码

    在Android中,`getWindow()`方法是Activity类的一个成员,用于获取与当前Activity关联的Window对象,这个对象用于设置Activity的外观和行为,比如主题、背景、透明度等。 【标签】"游戏源代码"再次强调了这个压缩包...

    android安卓源代码sdk4.4src

    eclipse关联源码 步骤一:把该源码下载下来 步骤2:找到你安装sdk的目录, 我的, android-4.4是: D:\Program Files (x86)\adt-bundle-windows-x86_64-20130729\sdk\platforms\android-19 步骤三:在这个目录下...

    安卓4.3 android4.3 源代码

    4. **关联源代码**:在Eclipse的项目结构中,选中需要查看源代码的Android库,然后在`Properties`中找到`Java Source Attachement`,将源代码路径指向正确的源代码目录。 通过以上步骤,开发者可以利用Eclipse的...

    最新2011Android4.0API源代码 包含所有API

    在Eclipse中关联这个源代码压缩包,开发者可以直接在IDE中查看API的实现,这对于调试和优化代码非常有帮助。通过深入研究这些源代码,开发者不仅可以解决具体问题,还能提升对Android平台整体架构的理解,从而编写出...

    android 兔子快跑 源代码

    - **src**目录:存放Java源代码,主Activity和其他游戏逻辑类。 - **assets**或`raw`目录:可能用于存储音频、视频或非结构化数据。 3. **关键组件分析** - **GameActivity**:作为游戏的主Activity,负责初始化...

    Android开发工具ADT关联源码与API文档

    首先,ADT关联源码意味着开发者可以在编写代码时直接查看Android框架类库的源代码,这对于理解和学习Android系统的内部工作原理非常有帮助。通过查看源码,开发者能够更深入地理解类、方法和属性的实现细节,从而更...

Global site tag (gtag.js) - Google Analytics