需要了解的东西

类加载器,class,method invoke,constructor,aop


怎样用eclipse来开发android源码

  1、建立基本的android开发环境

  请参考官方文档或<android模拟器在ubuntu8.10的安装>

  2、编译android源码

  android源码根目录下通过make进行编译,请注意一些配置,具体可参考<android源码的编译>
$ make PRODUCT-sdk-sdk
编译完成后会在/work/mydroid2.2/out/host/linux-x86/sdk/目录生成sdk

  3、把eclipse工程配置文件复制到android源码根目录下

  cp development/ide/eclipse/.classpath ./

  chmod u+w .classpath # Make the copy writable
删除下面两行
<classpathentry kind="lib" path="out/target/common/obj/JAVA_LIBRARIES/google-common_intermediates/javalib.jar"/>
<classpathentry kind="lib" path="out/target/common/obj/JAVA_LIBRARIES/gsf-client_intermediates/javalib.jar"/>
添加 <classpathentry kind="lib" path="out/target/common/obj/JAVA_LIBRARIES/android-common_intermediates/javalib.jar"/>
  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要设置为不要自动编译,即Project菜单中的Build automatically要去掉勾。

  6、在eclipse中修改

导入源代码之后,可以点build编译一次,一般编译之后还是有错的。可以在eclipse中修改。
展开packages/providers/CalendarProvider/src
展开包: com.android.providers.calendar
右键点击包com.android.providers.calendar
选择 "new file"
在对话框中选择点击 "Advanced >>" 按钮, 可以看到"Link to file in the file system" checkbox,
勾选上 checkbox. 这时 "Browse..." 可用.
点击 "Browse..." 按钮,选择EventLogTags.java (e.g.,out/target/common/obj/APPS/CalendarProvider_intermediates/src/src/com/android/providers/calendar/EventLogTags.java)
点击OK
点击 Finish (in "New File")


同样的方式修改com.android.providers.contacts的问题

7、eclipse上调试android里的程序。

  先执行:

  cd android源码目录

  . build/envsetup.sh

  lunch 1 # to build the emulator

  emulator & # you should see a GUI picture of a phone

  ddms & # 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应用程序的

启动模拟器:
./out/host/linux-x86/bin/emulator -avd android2.2 -kernel ./prebuilt/android-arm/kernel/kernel-qemu -ramdisk ./out/target/product/generic/ramdisk.img -system ./out/target/product/generic/system.img -skin ./sdk/emulator/skins/HVGA -sdcard ./out/host/linux-x86/bin/sdcard.img &
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值