Android源码Luncher2调试环境的搭建
3297 点击·0 回帖
![]() | ![]() | |
![]() | 第一、准备工作 1。将源码中packages/apps/Launcher2整个文件夹拷贝到一个目录中,这个目录不能是Eclipse的工程目录比如wrokgroups。最好在D盘根目录新建一文件夹别带中文(习惯) 2。新建Android项目,选择"Create project from existing source",并指定项目的路径即步骤1创建的文件夹。SDK你要根据你下载的Project所支持的Android版本选择(这里2.3.3),然后“finish”。 3。删除项目,然后复制2中创建的文件夹到Eclipse工作目录中。 4。 File / Import / General (Existing Projects into Workspaces) / Browse 选择步骤3复制来的的工程。这时Launcher就导入到Eclipse中了。不过工程会有很多红叉,接下来解决这个问题。 第二、导入工程所需要的包 首先需要编译好Android代码,编译完成后会生成一些包文件,复制下面三个文件到D盘根目录(其实可以任意选) 这里我们用到的有:(生成的包的路径为源码的out/target/common/obj/java_LIBRARIES) 1)framework_intermediates/classes.jar :这个主要是Android的框架类 2)Android-common_intermediates/classes.jar :这个包含com.Android.common.Search这个类 3)core_intermediates/classes.jar :这个包包含dalvik.system.VMRuntime这个类 这些都是需要导入到工程里面的包,这个可以通过配置工程的Build Path来加入, 右 键工程名称然后选择Build Path->Configure Build Path...->Libraries->Add Library->User Library->User Libraries...->New... 输入任意名字(注意,这里一定要先中 System Library),确认后再选Add JARs 选择三个classes.jar之间再确认。重复三次将三个classes.jar都导入进来。 将3个包加入进来后,然后还需要将它们放到Android2.3.3这个包的前面,可以在Build Path配置中选择Order and Export (注:选中3个新目录,然后UP就行了) 这时候就会发现Launcher2工程以及没有错误了,也可以编译了。 第三、需要重命名项目 工程的包名,因为模拟器中的包名和程序的名称造成冲突。www.atcpu.com 1。导人eclipse中。在src/com.Android.launcher上点击右键,"Refactor" -> "Rename...",名字可以自定义,选项选择(全选上) 2。点击"Preview>",进行预览(途中弹出警告的话,不用管,继续"Countinue"),这里要去掉一些不必要的修改,否则就会改乱了 3. 修改XML中自定义VIEW包名 备注:AndroidManiFest.xml中的AndroidharedUserId="@string/sharedUserId"删除掉否则会启动失败 第四、修改eclipse的配置文件有eclipse.ini(我的Eclipse3.6.2) eclipse.ini 如下 01 -startup 02 plugins/org.eclipse.equinox.launcher_1.1.1.R36x_v20101122_1400.jar 03 --launcher.library 04 plugins/org.eclipse.equinox.launcher.gtk.linux.x86_1.1.2.R36x_v20101019_1345 05 -product 06 org.eclipse.epp.package.jee.product 07 --launcher.defaultAction 08 openFile 09 -showsplash 10 org.eclipse.platform 11 --launcher.XXMaxPermSize 12 512m 13 --launcher.defaultAction 14 openFile 15 -vmargs 16 -DOSgi.requiredjavaVersion=1.5 17 -XX:MaxPermSize=512m 18 -Xms512m 19 -Xmx1024m 作者:Android.google | |
![]() | ![]() |