Android 源码编译so,jar

LOCAL_PATH:= $(call my-dir)
include $(CLEAR_VARS)


LOCAL_MODULE_TAGS := optional
############################################
LOCAL_PROGUARD_ENABLED := disabled
###########################################
LOCAL_SRC_FILES :=  $(call all-java-files-under, src)
###################################################################
LOCAL_STATIC_JAVA_LIBRARIES :=libspeechjar libpinyinjar liblocjar
LOCAL_JNI_SHARED_LIBRARIES := \
    libbdsVoiceAssistant \
    libCameal_16K_24_standard_ENPackage \
    libMFEBaiduAndroidv2 \
    libSmallFile_EN_G729_P2_r136_arm-linux-androideabi-4.4.3_softfp_ejTTS_v108 \
    libXiaoKun_Model_0507_16K_24_3500_standard_CNPackage
LOCAL_REQUIRED_MODULES :=  \
    libbdsVoiceAssistant  \
    libCameal_16K_24_standard_ENPackage \
    libMFEBaiduAndroidv2 \
    libSmallFile_EN_G729_P2_r136_arm-linux-androideabi-4.4.3_softfp_ejTTS_v108 \
    libXiaoKun_Model_0507_16K_24_3500_standard_CNPackage
#################################################################
LOCAL_PACKAGE_NAME :=  speeker
include $(BUILD_PACKAGE)
################################
include $(CLEAR_VARS)
LOCAL_PREBUILT_STATIC_JAVA_LIBRARIES := \
    libspeechjar:baidu_speech_3128.jar \ 
    libpinyinjar:pinyin.jar \
    liblocjar:locSDK_2.9.jar
include $(BUILD_MULTI_PREBUILT)
include $(call all-makefiles-under,$(LOCAL_PATH))
###############################
├── AndroidManifest.xml
├── Android.mk
├── lib
│   ├── armeabi
│   │   ├── libbdsVoiceAssistant.so
│   │   ├── libCameal_16K_24_standard_ENPackage.so
│   │   ├── libMFEBaiduAndroidv2.so
│   │   ├── libSmallFile_EN_G729_P2_r136_arm-linux-androideabi-4.4.3_softfp_ejTTS_v108.so
│   │   └── libXiaoKun_Model_0507_16K_24_3500_standard_CNPackage.so
│   ├── baidu_speech_3128.jar
│   ├── locSDK_2.9.jar
│   └── pinyin.jar
├── proguard.cfg

1.编译so:  LOCAL_JNI_SHARED_LIBRARIES  LOCAL_REQUIRED_MODULES(指定模块运行所依赖的模块(模块安装时将会同步安装它所依赖的模块))打包so进apk 。so放在lib/armeabi里,自动打包

2.编译jar:LOCAL_STATIC_JAVA_LIBRARIES LOCAL_PREBUILT_STATIC_JAVA_LIBRARIES 注意两个参数的位置,1位于编译apk之前,2位于打包jar的之前,编译apk之后。这样他们会混在一起,成为一个二进制包

3.编译jar出错: 有很多warrning ,需要LOCAL_PROGUARD_ENABLED := disabled 关闭混淆

猜你喜欢

转载自huaonline.iteye.com/blog/1988984