Android替换掉原有home

代码版本 : Gingerbread 2.3.7


第一步:编译好的源代码,详见Android官方文档。

第二步:Android2.3.7共有两个home,一个在packages/apps/Launcher2、另一个在development/samples/Home。其中,samples下的Home只是个样例,但是也在Intent过滤器里注册了Home,所以,如果单单干掉Launcher2,这个还是在的,还是会出现选择Home的选项,我们可以将两个Home都干掉,替换成自己的。修改两个文件,samples/Home/AndroidManifest.xml。将里面的这句去掉。然后在命令行进入samples目录,执行mm命令。同样,对于Launcher2,也是进入到修改AndroidManifest.xml,去掉那句话,然后进入Launcher2目录,执行mm命令。

第三步:两个都执行完后,将你打算作为Home的替换程序拷贝到packages/apps目录下(如果是从eclipse里移植过来的,要在目录里添加Android.mk,具体参考packages/apps下面应用自带的Android.mk),然后修改AndroidManifest.xml。在里的值改为:

               
               
               
               

保存,回去执行mm操作。

第四步:回到gingerbread根目录,执行make snod。system.img生成后,运行模拟器应该就能看到结果了。


PS:第二部将两个应用下面的Android.mk重命名为Android.mk.backup。第四步改为先make clean,然后make -j4应该也能起到同样的作用。这个方法没测试过,主要是重新make要花费太长时间。可以考虑将out/target/product/generic/system/apps和out/target/common/obj两个目录删掉,然后调用make snod,应该也能起到同样作用,这个没测试过。

 

2012/10/19更新:在你打算作为Hone的替换程序的Android.mk文件里添加:LOCAL_OVERRIDES_PACKAGES := Launcher2

加了这一句,就可以省略上面的第二步,clean完重新编译是肯定可行的。也许删除所有跟Launcher2相关的内容,然后编译也能启动作用(这个未测试)

你可能感兴趣的:(Android编译)