⑴ 用别人的android代码怎么修改
1、可以使用 eclipse 来编辑 java 程序、检查错误(主要是类库包含和语法方面),但是不能在 eclipse 上编译运行 android 源码,还是得在 shell 中 make(或 mm 或 mmm)
2、android 源码文件夹里提供有一些 eclipse 配置文件, .claapath:eclipse 工程的配置文件,方便我们直接把 android 源码相应的文件和 JAVA 包导入工程 android-formatting.xml 和 android.importorder:这个很重要,主要是用来规范我们的编码风格,更容 易使我们的代码风格一致
3、把 android 源码作为一个工程导入 eclipse 时,必须注意两点
1)、新建的工程必须是 java project,不能是 android project,否则会破坏 android 源码(一般是多添 加文件/文件夹)
2)、导入前最好检查.classpath 里的文件在 android 源码中是否有相应的文件(文件夹),否则也会破坏 android 源码(一般是多添加文件/文件夹)
总的来说: 1、用 eclipse 来编辑代码、检查错误
2、不在 eclipse 上编译、运行 android 源码程序,只能在命令行通过 make(或 mm 或 mmm)编译 android 源 码
3、可以在 eclipse 上调试 android 源码程序(原理:eclipse 通过 ddms 服务器在 emulator 上进行调试), 并可以单步调试、断点调试。
下面,从官方文档总结出具体怎样用 eclipse 来开发 android 源码
1、建立基本的 android 开发环境 请参考官方文档或<android 模拟器在 ubuntu8.10 的安装> 2、编译 android 源码 android 源码根目录下通过 make 进行编译,请注意一些配置,具体可参考<android 源码的编译>
3、把 eclipse 工程配置文件复制到 android 源码根目录下 cp development/ide/eclipse/.classpath ./ chmod u+w .classpath # Make the writable
4、修改 eclipse 程序的配置 1)、修改 eclipse 缓存设置 把 eclipse.ini(在 eclipse 软件的安装目录下)的 3 个值改为下面的值: -Xms128m -Xmx512m -XX:MaxPermSize=256m 2)、把 android-formatting.xml 和 android.importorder 导入 eclipse android-formatting.xml、.classpath 和 android.importorder 都放在 development/ide/eclipse/下 android-formatting.xml 用来配置 eclipse 编辑器的代码风格;android.importorder 用来配置 eclipse 的 import 的顺序和结构。 在 window->preferences->java->Code style->Formatter 中导入 android-formatting.xml 在 window->preferences->java->Code style->Organize Imports 中导入 android.importorder 3)、安装 anyedit 插件(可选) 在 http://andrei.gmxhome.de/anyedit/下载并导入 eclipse 中
5、把 android 源码作为一个工程导入 eclipse 导入前先检查.classpath 里的文件在 android 源码中是否有相应的文件 (文件夹) 否则也会破坏 android , 源码(一般是多添加文件/文件夹),.classpath 里多余的路径可删除 新建 Java Project(不是 android project,否则会破坏 android 源码),选择从已存在的工程导入,工 程名任意,完成。 导入时,eclipse 要 build 工程,比较慢。导完后,一般都没有错误。
6、eclipse 上调试 android 里的程序。 先执行: cd android 源码目录 . build/envsetup.sh lunch 1 emulator & ddms & # to build the emulator # you should see a GUI picture of a phone # you should get a splufty debugging console 然后在 eclipse 中配置调试类型和端口: 在 Run->Debug Configurations->Remote java application 上双击,然后,”Host:”设为 localhost,” Port:”设为 8700,”Connection Type”为 Standard(Socket Attach) 然后“Apply” 注意,在点击”Debug”时苦出错,说 8700 端口被占用,那么把 DDMS 程序关掉,重新打开 DDMS 就 OK 了。 如果提供连不到 VM 错误时,请注意,要先在 DDMS 中选中某一进程(对应某一应用程序),才能在 eclipse 执行 Debug。 在 eclipse 调试时,可以设断点、单步调试。估计 google 团队也是这样开发、调试 android 应用程序的
7、编译 android 源码 执行: cd android 源码目录 . build/envsetup.sh 那么就会多出 mm/mmm 等命令, mm/mmm 用来编译模块 (包括 C、 C++、 JAVA 程序)我们也可以直接在 android 。 源码根目录下执行“make 模块名”来编译模块。 Android 源码中添加 修改应用 Posted on 2010-08-19 13:37 zhangweia 阅读(1607) 评论(0) 编辑 收藏 第一部分:添加一个新的应用 1. 在和系统相同版本的 SDK 目录下开发自己的 android 应用 2. 把开发的 android 工程放到源码的 packages/apps/目录下 3. 在工程目录下添加 Android.mk 文件,修改 LOCAL_PACKAGE_NAME :=test001 把工程名指定为 自己的工程名,我加载的工程为 test001 LOCAL_PATH:= $(call my-dir) include $(CLEAR_VARS) LOCAL_MODULE_TAGS := user LOCAL_SRC_FILES := $(call all-java-files-under, src) LOCAL_STATIC_JAVA_LIBRARIES := googlelogin-client LOCAL_PACKAGE_NAME :=test001 LOCAL_CERTIFICATE := shared include $(BUILD_PACKAGE) # Use the folloing include to make our test apk. include $(call all-makefiles-under,$(LOCAL_PATH)) 4. 回到源码目录,然后执行 . build/envsetup.sh 注意 sh 后面有个空格 5. 执行 mmm packages/apps/test001 编译 test001.apk 包 6. 执行 make snod,编译 system.img 包 7. 执行 emulator &就可以在应用程序下看到自己编译的工程了 第二部分:修改原有的 Android 应用 1. 首先新建一个 android 工程,加载自己的 java 文件和资源文件 2. 在自己的 android 工程初步调试成功以后,把该工程的 java 文件,资源文件拷贝到联系人对应的 java 文件和资源文件目录 3. 然后在 linux 下执行以下命令,编译人联系人模块,把资源文件编译到联系人目录中 . build/envsetup.sh mmm packages/apps/Contacts 4. 刷新 android 源码工程,这个时候你就可以在 Contacts 包目录下看到你新加的资源文件和源文件了, 并可以在源码工程下修改代码并直接调试了 5. ?? 为什么不在 android 源码工程下直接添加源文件和 xml 资源文件了???? 答: 因为我们的 android 源码工程师以 java 工程导入的, 如果添加 android 的 xml 文件的话, java 程序无法识别资源 R 文件,所以我们必须先把需要的 xml 资源文件先在 linux 下编译 6. 在源码工程修改后,则可在 linux 下再次执行联系人编译命令,并 make snod 加载 system.img 文件, 并启动模拟器(emulator &),就可以看到你的修改了。 2011-04-19 修改 Android 源码的 Launcher 的例子 博客分类: ? Android AndroidOSUI 框架 Android 的 Launcher 研究:客制化桌面 UI 前言 能取得 Android OS 原始码,并修改里头的内容,有时候也颇有乐趣。最近和几位朋友聊到 “Android 框架的改造”,以及如何吸引对 Android 框架技术有兴趣的同好 一起交流的议 题;我个人认为,一开始如果能丢出一个比较有乐趣的议题,或许可以有抛砖引玉的效果。 上周在北京进行 Android 培训课程时,与 eoeAndroid 社群也进行了想法的交流,由于大家 都体认到 Android 底层技术的重要性及其价 值, 而且 eoeAndroid 社群里也有许多技术好手, 所以就和 eoeAndroid 的创办人靳岩兄有了一个共同主持研究 Android 底层技术 “同好小 组” 的想法,希望能透过社群的方式,集合大家的智慧,一起把底层技术研究清楚。 因为要让大家能有焦点,所以“发题”很重要,这个工作就由落在我身上了。由于第一次希 望题目能简单,并且有趣一点,至少要能达到发球的效果,吸引大家开始关心 Android 底层 技术,所以原则是:希望能用最简单的方式、让大家体验修改底层的乐趣。 题目说明: Launcher 第一次的题目是“Launcher”的修改。 Launcher 就是 Android 的应用程式启动器,Launcher 的功能还包含:桌面的切换、应用程 式快捷(shortcut)功能、背景图(Wallpaper)功能等等。因此,修改 Launcher 可以改变一些 很深层的 UI 功能。 在 Android 的桌面最下方, 有一个图示, 按下后可以拉出应用程式图示清单, 这是 Launcher 提供的功能。这一次,因为我们觉得这个 Launcher 的图示太制式化了,越看越不好看,所 以想要修改一下,换张图,要怎么做到呢? 范例展示 例如,图 1 是原始的图示;图 2 是修改后的图示。 图 1: 原始图示 图 2: 帮 Launcher 妆扮一下 实作说明 1/4: 取得 Android 原始码与 EeePC 移植 这个功能并不难做,事实上,完全不用写程式。只要把图档重做就可以了。只不过前提是, 要知道: 1. 如何取得 Android OS 原始程式码 2. 如何编译 Android OS 最简单的做法是: 1. 下载 Android 原始码后、取得 EeePC 的移植(proct) 2. 编译“TARGET_PRODUCT”为 eee_701 3. 由于 Launcher 都是用 Java 语法写成的, 所以不会有架构(ARM/x86/...)的问题, 编译后 可以取得 Launcher.apk;APK 套件是不分处理器平台的 先学会如何由 Android 原始码编译出 eee_701 的 image,才有办法继续进行 实作说明 2/4: 修改图档 在 Android 原始码的 packages/apps/ 目录里,存放了 Android 内建的应用程式原始码, Launcher 是 Android 的一个应用程式,所以从这里找到它的原始码,并进行修改工程。 切换到以下目录: <android source>/packages/apps/Launcher/ 接着要修改 src/目录下的内容,还是 res/目录下的内容呢?图档属于 Android 的 “resource”,因此当然是到 res/目录下找到我们要的图档。 切换到以下目录: <android source>/packages/apps/Launcher/res/ 又看到了一大堆目录,图档的部份存放于: ? ? drawable-land/ - landscope 模式的图档 drawable-port/ - portrait 模式的图档 我们先改一下 portrait 模式的图档。 找到 drawable-port/tray_handle_normal.png 档案如 下: 就是它了,换掉,把图档换成这个: 换好后重编 Android 即可。一行程式都不用改。 实作说明 3/4: 安装 Launcher.apk 重编 Android 原始码,接着可以在 out/target/proct/<proct name>/system/app/找到 Launcher.apk 套件。把 Launcher.apk 安装到 AVD(Android 模拟器)里做测试,方法如下: 1. 先启动一个 AVD 2. 执行 adb 将 Launcher.apk 手动安装到 AVD 里,指令如下: $ adb install -r <your-path>/Launcher.apk
⑵ 如何编辑android 系统源码
1、通过 ubuntu 软件中心安装 wine;
2、通过 ubuntu 软件中心安装 winetricks;
3、通过 winetricks 在 shell中输入: winetricks mfc42
1、通过 wine windows 的方式启动代理服务器
2、设置浏览器代理服务器
3、设置shell代理服务器:
在shell中输入 sudo gedit /etc/bash.bashrc
在文件 /etc/bash.bashrc 中添加
通过shell安装如下的组件:
1、sudo apt-get install bison g++-multilib git gperf libxml2-utils
2、新建一个存放源码的目录,如:mkdir ~/andorid/source
3、在源码目录中输入命令:repo init -u -b android-4.0.1_r1
其中: android-4.0.1_r1是android源码的版本,更多的版本可以通过下面的方式查询:
4、修改source/.repo/manifest/default.xml 文件中的 fetch 的值为:
git://Android.git.linaro.org/
通过如下的指令来设置邮箱和用户名
git config --global user.name "<your name>" ----修改用户名git config --global user.email "<your email>" ----修改email
5、在source目录下输入指令:repo sync
便开始了代码的下载
方便他人亦是方便自己,如果觉得还行就点下下边的投票吧,这样可以帮助其他人更快的找到解决问题的方法;有疑问的也可留言哦, 谢谢!