android查漏补缺(2)四种编译目标

 一. android.mk四种编译目标

①,apk

android.mk

#设置当前路径
LOCAL_PATH := $(call my-dir)
#清除除LOCAL_PATH外的所有LOCAL_XX变量
include $(CLEAR_VARS)

#设置包名,表示编译的是apk
LOCAL_PACKAGE_NAME := SxxiaoVendor

#指定源文件
LOCAL_SRC_FILES := $(call all-java-files-under, src)

#指定编译生成的目标文件格式,未设置会报:unknown target问题,可选
##PACKAGE(APK),SHARED_LIBRARY(.so),STATIC_LIBRARY(.a),EXECUTABLE(EXE),JAVA_LIBRARY(.jar(android dex)),STATIC_JAVA_LIBRARY(jar)
include $(BUILD_PACKAGE)

#指定全编是依赖的镜像
#ALL_DEFAULT_INSTALLED_MODULES += $(LOCAL_PACKAGE_NAME)

#选择platform(核心进程,进程UID为system)来进行签名,build/target/product/security下有四组默认签名
#还可选testkey(普通apk,默认),shared(该apk需要和home/contacts共享数据),media(该apk是/media/download中的一环)
#如果是PRESIGNED,则表示改应用已被签名,不需要再签名
#LOCAL_CERTIFICATE := platform

#该模块在所有版本下才编译,还可选user,eng,tests
#指定optional/eng,apk被安装到/system/app
#指定tests,apk被安装到/data/app
#LOCAL_MODULE_TAGS := optional

#使用后,会使用sdk的hide的api来编译,如果
#LOCAL_PRIVATE_PLATFORM_APIS := true


②,exe

#设置当前路径
LOCAL_PATH := $(call my-dir)
#清除除LOCAL_PATH外的所有LOCAL_XX变量
include $(CLEAR_VARS)

#设置包名,表示编译的是apk
LOCAL_MODULE := SxxiaoVendor

#指定源文件
LOCAL_SRC_FILES := $(call all-c-files-under,src)

#指定编译生成的目标文件格式,未设置会报:unknown target问题,可选
#PACKAGE(APK),SHARED_LIBRARY(.so),STATIC_LIBRARY(.a),EXECUTABLE(EXE),JAVA_LIBRARY(.jar(android dex)),STATIC_JAVA_LIBRARY(jar)
include $(BUILD_EXECUTABLE)



③,so

#设置当前路径
LOCAL_PATH := $(call my-dir)
#清除除LOCAL_PATH外的所有LOCAL_XX变量
include $(CLEAR_VARS)

#设置包名,表示编译的是apk
LOCAL_MODULE := SxxiaoVendor

#指定源文件
LOCAL_SRC_FILES := $(call all-c-files-under,src)

#指定编译生成的目标文件格式,未设置会报:unknown target问题,可选
#PACKAGE(APK),SHARED_LIBRARY(.so),STATIC_LIBRARY(.a),EXECUTABLE(EXE),JAVA_LIBRARY(.jar(android dex)),STATIC_JAVA_LIBRARY(jar)
include $(BUILD_SHARED_LIBRARY)



④,jar

#设置当前路径
LOCAL_PATH := $(call my-dir)
#清除除LOCAL_PATH外的所有LOCAL_XX变量
include $(CLEAR_VARS)

#设置包名,表示编译的是apk
LOCAL_MODULE := SxxiaoVendor

#指定源文件
LOCAL_SRC_FILES := $(call all-java-files-under,src)

#指定编译生成的目标文件格式,未设置会报:unknown target问题,可选
#PACKAGE(APK),SHARED_LIBRARY(.so),STATIC_LIBRARY(.a),EXECUTABLE(EXE),JAVA_LIBRARY(.jar(android dex)),STATIC_JAVA_LIBRARY(jar)
include $(BUILD_JAVA_LIBRARY)



你可能感兴趣的:(基础查漏补缺,android)