博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Android源码Luncher2调试环境的搭建
阅读量:7049 次
发布时间:2019-06-28

本文共 1909 字,大约阅读时间需要 6 分钟。

hot3.png

第一、准备工作

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工程以及没有错误了,也可以编译了。

第三、需要重命名项目

工程的包名,因为模拟器中的包名和程序的名称造成冲突。

1。导人eclipse中。在src/com.android.launcher上点击右键,"Refactor" -> "Rename...",名字可以自定义,选项选择(全选上)

2。点击"Preview>",进行预览(途中弹出警告的话,不用管,继续"Countinue"),这里要去掉一些不必要的修改,否则就会改乱了

3. 修改XML中自定义VIEW包名

备注:AndroidManiFest.xml中的android:sharedUserId="@string/sharedUserId"删除掉否则会启动失败

 

第四、修改eclipse的配置文件有eclipse.ini(我的Eclipse3.6.2)

eclipse.ini 如下

-startupplugins/org.eclipse.equinox.launcher_1.1.1.R36x_v20101122_1400.jar--launcher.libraryplugins/org.eclipse.equinox.launcher.gtk.linux.x86_1.1.2.R36x_v20101019_1345-productorg.eclipse.epp.package.jee.product--launcher.defaultActionopenFile-showsplashorg.eclipse.platform--launcher.XXMaxPermSize512m--launcher.defaultActionopenFile-vmargs-Dosgi.requiredJavaVersion=1.5-XX:MaxPermSize=512m-Xms512m-Xmx1024m

转载于:https://my.oschina.net/onlytwo/blog/62436

你可能感兴趣的文章
交换机真的只工作在第二层吗?
查看>>
走向DBA[MSSQL篇] 针对大表 设计高效的存储过程【原理篇】 附最差性能sql语句进化过程客串...
查看>>
Python条件判断和循环
查看>>
15年编程生涯,资深架构师总结的7条经验
查看>>
第三节课作业
查看>>
最长回文子串问题
查看>>
ssh客户端及基于key登陆
查看>>
echo命令
查看>>
图形语言 Kgo
查看>>
兄弟连第10节课
查看>>
调整Virtual Box硬盘大小
查看>>
case 格式
查看>>
Windows下Apache服务器中自动配置二级子域名
查看>>
【Tomcat】日常遇到的Tomcat报错及解决方法
查看>>
Transform Map - Ignore Row if any fields are empty
查看>>
SVG绘制loading效果
查看>>
在kubernets中搭建jenkins服务
查看>>
iEclipse-不只是Eclipse的开发者社区
查看>>
Oracle个人的一些记录
查看>>
20.分屏查看命令 less命令
查看>>