如何把应用程序app编译进android系统

转载: 
http://ywxiao66.blog.163.com/blog/static/175482055201152710441106/ 
------------------------------------------------------------------ 
把常用的应用程序编译到img文件中,就成了系统的一部分,用户不必自己安装,当然也卸载不了; 
同时也可以删减系统自带的应用程序,精简系统; 

1.\build\target\product 目录下generic.mk文件: 
Java代码   收藏代码
  1. PRODUCT_PACKAGES := \  
  2.     AccountAndSyncSettings \  
  3.     DeskClock \  
  4.     AlarmProvider \  
  5.     Bluetooth \  
  6.     Calculator \  
  7.     Calendar \  
  8.     Camera \  
  9.     testMid \  
  10.     CertInstaller \  
  11.     DrmProvider \  
  12.     Email \  
  13.     Gallery3D \  
  14.     LatinIME \  
  15.     Launcher2 \  
  16.     Mms \  
  17.     Music \  

我们添加一个testMid \ 应用名称。 
2.把testMid包放入 
\packages\apps 目录下,修改android.mk文件。 

Java代码   收藏代码
  1. LOCAL_PATH:= $(call my-dir)  
  2. include $(CLEAR_VARS)  
  3. LOCAL_MODULE_TAGS := optional  
  4. LOCAL_SRC_FILES := $(call all-subdir-java-files)  
  5. LOCAL_PACKAGE_NAME := testMid  
  6. LOCAL_CERTIFICATE := platform  
  7.   
  8. include $(BUILD_PACKAGE)  

注:LOCAL_PACKAGE_NAME := testMid (包名必须和generic.mk中添加的相同) 
编译源码,可以看到在 
\out\target\product\smdkv210\system\app 
目录下生存了testMid.apk了。这时system.img也包含了此应用。 
------------------------------------------------------------------- 
特殊情况:有时,应用需要包含jar包,这时的app导入源码时会出现问题: 
MODULE.TARGET.JAVA_LIBRARIES.libarity already defined by ... stop 

由于 LOCAL_STATIC_JAVA_LIBRARIES := libarity  会引发错误信息。 
目前解决方法是: 
\build\core 目录下修改base_rules.mk 
注释掉错误信息: 

ifdef $(module_id) 
#$(error $(LOCAL_PATH): $(module_id) already defined by $($(module_id))) 
endif 
$(module_id) := $(LOCAL_PATH) 

--重新编译,这时可以通过了。 

  (2)、删除原厂(Telchips)带源码的应用程序,如DTV_DVBT 
  在/device/telechips/m801/device.mk 
  注释掉相应语句: 
  # PRODUCT_PACKAGES += \ 
  #    SampleDVBTPlayer \ 
  同时,在/out/target/product/m801/system/app 找到相应的.APK包,并删除 
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值