怎么在eclipse中查看android源码
1个回答
2016-11-28 · 学高端技术就来八维教育
关注
展开全部
在eclipse中查看android源代码的两种方法
方法一:
一名Java开发工程师经常会查看库的源代码,因为我们用ADT发现android库没有自带source code,我就创建一个user library来解决这个问题的。
1、首先你需要下载android源代码,用git,详见android开发官方网站。
然后找到源码目录下的\frameworks\base\core\java,把android压缩成android.zip把下面这些文件夹拖入到里面(结构android.zip\)\frameworks\base\graphics\java\android\
\frameworks\base\location\java\android\
\frameworks\base\media\java\android\
\frameworks\base\opengl\java\android\
\frameworks\base\sax\java\android\
\frameworks\base\telephony\java\android\
\frameworks\base\services\java\com\android\\frameworks\base\vpn\java\android\
\frameworks\base\wifi\java\android\
2、在你的android工程上,右键->属性,找到Java Build Path3、Add Library->User Library->Next->User Libraries->New4、输入Library的名称,比如android_src2.0
5、Add JARs->选择刚刚创建的android.zip
这样你就把android源码添加上了。
方法二:
上面的方法我试了一下1.6的就是不行,只有2.0的才行,所以用网上搜索到的一种方法,添加1.6SDK的源代码。
from __future__ import with_statement# for Python < 2.6import os
import re
import zipfile
# open a zip file
DST_FILE = 'sources.zip'
if os.path.exists(DST_FILE):
print DST_FILE, "already exists"
exit(1)
zip = zipfile.ZipFile(DST_FILE, 'w', zipfile.ZIP_DEFLATED)# some files are duplicated, copy them only oncewritten = {}
# iterate over all Java files
for dir, subdirs, files in os.walk('.'):
for file in files:
if file.endswith('.java'):
# search package name
path = os.path.join(dir, file)
with open(path) as f:
for line in f:
match = re.match(r'\s*package\s+([a-zA-Z0-9\._]+);', line)if match:
# copy source into the zip file using the package as pathzippath = match.group(1).replace('.', '/') + '/' + fileif zippath not in written:
written[zippath] = 1
zip.write(path, zippath)
break;
zip.close()
把这些代码拷贝一下,新建一个叫 makesrc.py的文件,放到< 源码位置>/frameworks/base下面,然后执行makesrc.py,完毕之后会有sources.zip然后在platforms\android-1.6\sources 下面解压到这个目录具体目录格式是\platforms\android-2.1\sources\
android
com
java
javax
junit
mock_android
org
方法一:
一名Java开发工程师经常会查看库的源代码,因为我们用ADT发现android库没有自带source code,我就创建一个user library来解决这个问题的。
1、首先你需要下载android源代码,用git,详见android开发官方网站。
然后找到源码目录下的\frameworks\base\core\java,把android压缩成android.zip把下面这些文件夹拖入到里面(结构android.zip\)\frameworks\base\graphics\java\android\
\frameworks\base\location\java\android\
\frameworks\base\media\java\android\
\frameworks\base\opengl\java\android\
\frameworks\base\sax\java\android\
\frameworks\base\telephony\java\android\
\frameworks\base\services\java\com\android\\frameworks\base\vpn\java\android\
\frameworks\base\wifi\java\android\
2、在你的android工程上,右键->属性,找到Java Build Path3、Add Library->User Library->Next->User Libraries->New4、输入Library的名称,比如android_src2.0
5、Add JARs->选择刚刚创建的android.zip
这样你就把android源码添加上了。
方法二:
上面的方法我试了一下1.6的就是不行,只有2.0的才行,所以用网上搜索到的一种方法,添加1.6SDK的源代码。
from __future__ import with_statement# for Python < 2.6import os
import re
import zipfile
# open a zip file
DST_FILE = 'sources.zip'
if os.path.exists(DST_FILE):
print DST_FILE, "already exists"
exit(1)
zip = zipfile.ZipFile(DST_FILE, 'w', zipfile.ZIP_DEFLATED)# some files are duplicated, copy them only oncewritten = {}
# iterate over all Java files
for dir, subdirs, files in os.walk('.'):
for file in files:
if file.endswith('.java'):
# search package name
path = os.path.join(dir, file)
with open(path) as f:
for line in f:
match = re.match(r'\s*package\s+([a-zA-Z0-9\._]+);', line)if match:
# copy source into the zip file using the package as pathzippath = match.group(1).replace('.', '/') + '/' + fileif zippath not in written:
written[zippath] = 1
zip.write(path, zippath)
break;
zip.close()
把这些代码拷贝一下,新建一个叫 makesrc.py的文件,放到< 源码位置>/frameworks/base下面,然后执行makesrc.py,完毕之后会有sources.zip然后在platforms\android-1.6\sources 下面解压到这个目录具体目录格式是\platforms\android-2.1\sources\
android
com
java
javax
junit
mock_android
org
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询