Android4.1 源码Camera 是如何编译的
2014-08-24 13:03
405 查看
问:
Android 4.1源码中 有两个Camera 目录为:package\app\Camera package\app\legacyCamera 现在 编译用的:package\app\Camera, 但package\app\Camera 该目录没有Androidmanifest.xml和.mk文件看了好像是和gallery2 共用的Androidmanifest.xml 。 有谁清楚 package\app\Camera 是如何编译的吗?万分感谢。
答:
Gallery和Camera共用了一个Android.mk文件
LOCAL_SRC_FILES是指定java文件,LOCAL_RESOURCE_DIR是指定资源文件,然后通过include $(BUILD_PACKAGE)来编译apk,其中LOCAL_REQUIRED_MODULES指定了libjni_mosaic,所以会优先编译Camera的这个c库。
include $(call all-makefiles-under, jni)
是编译Gallery的jni
剩下的就是编译测试apk
34 # Use the following include to make gallery test apk.
35 include $(call all-makefiles-under, $(LOCAL_PATH))
36
37 # Use the following include to make camera test apk.
38 include $(call all-makefiles-under, ../Camera)
别的没什么了,比较简单
Android编译系统会把所遇的mk文件load到内存里面,完全遵照Makefile的语法来编译整个系统。
它会从第一个编译目标开始编译(被称为终极目标)。但是不是所有模块都会编译,只会编译终极目标所依赖的模块。
而在Camera这里,实质上,你只编译java代码也是可以的,同样可以生成apk。但是,如果不指定依赖模块,它所依赖的Camera 中的libjni_mosaic就不会被编译。
如果想了解关于makefile相关的东西,可以查阅GNU make manual,有人将其翻译了。
Android 4.1源码中 有两个Camera 目录为:package\app\Camera package\app\legacyCamera 现在 编译用的:package\app\Camera, 但package\app\Camera 该目录没有Androidmanifest.xml和.mk文件看了好像是和gallery2 共用的Androidmanifest.xml 。 有谁清楚 package\app\Camera 是如何编译的吗?万分感谢。
答:
Gallery和Camera共用了一个Android.mk文件
LOCAL_SRC_FILES是指定java文件,LOCAL_RESOURCE_DIR是指定资源文件,然后通过include $(BUILD_PACKAGE)来编译apk,其中LOCAL_REQUIRED_MODULES指定了libjni_mosaic,所以会优先编译Camera的这个c库。
include $(call all-makefiles-under, jni)
是编译Gallery的jni
剩下的就是编译测试apk
34 # Use the following include to make gallery test apk.
35 include $(call all-makefiles-under, $(LOCAL_PATH))
36
37 # Use the following include to make camera test apk.
38 include $(call all-makefiles-under, ../Camera)
别的没什么了,比较简单
Android编译系统会把所遇的mk文件load到内存里面,完全遵照Makefile的语法来编译整个系统。
它会从第一个编译目标开始编译(被称为终极目标)。但是不是所有模块都会编译,只会编译终极目标所依赖的模块。
而在Camera这里,实质上,你只编译java代码也是可以的,同样可以生成apk。但是,如果不指定依赖模块,它所依赖的Camera 中的libjni_mosaic就不会被编译。
如果想了解关于makefile相关的东西,可以查阅GNU make manual,有人将其翻译了。
相关文章推荐
- 如何编译android 4.1 的源码并在android的ADT里面调试framework相关的代码
- 如何在32位ubuntu11.10 下编译android 4.0.1源码和goldfish内核
- Android中如何编译运行系统自带桌面Launcher2源码
- Ubuntu 12.04(64位)下载并编译 Android 4.1 源码
- Android源码编译如何添加eng 或者userdebug等lunch选项
- Android 源码未编译完情况下如何编译自己的apk
- 如何在32位ubuntu11.10 下编译android 4.0.1源码和goldfish内核
- 求助 贴,,如何在Android系统源码的环境下用make来编译?
- 如何在Android源码下编译自己的项目。
- android 4.0 launcher 2 源码 eclipse可以编译(也包含android 4.1 launcher2 源码编译 )
- android4.0.4版本源码编译后如何使用
- Android 源码编译的系统apk如何安装到手机
- Android源码开发(1)---- 如何在Ubuntu 11.10中搭建Android编译开发环境
- 如何定制android源码的编译选项 & 后期安装?
- 如何在 Ubuntu 9.10 下编译 Android 源码
- 如何将Android 源码中编译出的apk进行自己的签名
- 如何编译android源码包res的图片资源
- Android 4.1 (Jelly Bean) 源码编译过程总结
- 如何下载并编译Android 4.0内核源码Goldfish(图文)
- Android 4.1源码编译找不到资源文件解决办法