先列出关键点,有空再详细整理。
要想让原生的Launcher代码能运行起来,主要有三个问题:
1、Launcher类编译不过的问题:com.android.common.Search这个类依赖的Jar包(android-common_intermediates.jar)需要额外导入;
android-common_intermediates.jar 这个包要从Android原生代码编译出来的android-common_intermediates目录下去找,上网应该也能找到。
2、编译过后,在手机上无法运行,需要修改包名;
<manifest
xmlns:android="http://schemas.android.com/apk/res/android"
package="com.android.launcher">
<original-package android:name="com.android.launcher2" />
*.xml 中的 "res/com.android.launcher" 替换成 "res/目标包名"
例如default_workspace.xml中的 <favorites xmlns:launcher="http://schemas.android.com/apk/res/com.android.launcher">
这里 res/com.android.launcher,res/ 后的这一串内容,需要修改成和 menifest那个package对应的包名,比如都叫com.zhao3546.launcher
3、Unable to execute dex: Java heap space Android上的Java虚拟机内存很小,如果引入了一些不必要的jar包,会搞虚拟机内存溢出;