最近一直想学习多媒体,作为初学者,只能慢慢分析android 源码。这里我会从Music播放器入手开始一步一步分析。
Music.apk的代码所在目录为packages/apps/Music/
首先看一下Android.mk文件(Android.mk是Android提供的一种makefile文件,用来指定诸如编译生成so库名、引用的头文件目录、需要编译的.c/.cpp文件和.a静态库文件等)
<span style="font-family:Times New Roman;">
1LOCAL_PATH:= $(call my-dir) /*用来定位源文件的位置,$(call my-dir)的作用就是返回当前目录的路径*/
2include $(CLEAR_VARS) /*清除一些变量的值,但是LOCAL_PATH除外*/
3
4LOCAL_MODULE_TAGS := optional /*模块在所有版本eng、user和tests下都编译*/
5
6LOCAL_SRC_FILES := $(call all-java-files-under, src) \ /*编译的源文件,src目录下的所有java文件和指定aidl文件*/
7 src/com/android/music/IMediaPlaybackService.aidl
8
9LOCAL_PACKAGE_NAME := Music /*编译成的包名,即apk文件名*/
10
11LOCAL_PROGUARD_FLAG_FILES := proguard.flags
12
13include $(BUILD_PACKAGE) /*编译成应用包*/
14
15# Use the folloing include to make our test apk.
16include $(call all-makefiles-under,$(LOCAL_PATH)) /* 编译当前路径下的所有.mk文件*/
</span>
这里特别说明下LOCAL_PROGUARD_FLAG_FILES