Framework載入現有第三方JAR包或SO庫
開發板為RK3399
1、現有libdatabase_sqlcipher.so,放置在jniLibs/armeabi下面
LOCAL_PATH:= $(call my-dir)
include $(CLEAR_VARS)
LOCAL_MODULE_TAGS := optional
LOCAL_MODULE := libdatabase_sqlcipher.so
LOCAL_MODULE_CLASS := SHARED_LIBRARIES
LOCAL_MODULE_PATH := $(TARGET_OUT_SHARED_LIBRARIES)/../lib //指定生成路徑,預設到/system/lib64,由於是32位庫,所以需重新指定
LOCAL_SRC_FILES := jniLibs/armeabi/$(LOCAL_MODULE)
#OVERRIDE_BUILD_MODULE_PATH := $(TARGET_OUT_INTERMEDIATE_LIBRARIES)
include $(BUILD_PREBUILT)
另一種方式:但預設生成在lib64下面
include $(CLEAR_VARS)
LOCAL_MODULE_TAGS := optional
LOCAL_PREBUILT_LIBS :=libdatabase_sqlcipher:jniLibs/armeabi/libdatabase_sqlcipher.so
LOCAL_PREBUILT_LIBS +=libsqlcipher_android:jniLibs/armeabi/libsqlcipher_android.so
LOCAL_PREBUILT_LIBS +=libstlport_shared:jniLibs/armeabi/libstlport_shared.so
#LOCAL_MODULE_PATH := $(TARGET_OUT_SHARED_LIBRARIES)/../lib
include $(BUILD_MULTI_PREBUILT)
2、現有sqlcipher.jar,放置在lib下面
include $(CLEAR_VARS)
LOCAL_MODULE_TAGS := optional
LOCAL_MODULE := sqlcipher.jar
LOCAL_MODULE_CLASS := JAVA_LIBRARIES
LOCAL_MODULE_PATH := $(TARGET_OUT_JAVA_LIBRARIES)//最終生成在/system/framework下面
LOCAL_SRC_FILES := libs/sqlcipher.jar
include $(BUILD_PREBUILT)
另一種寫法:
include $(CLEAR_VARS)
LOCAL_MODULE_TAGS := optional
LOCAL_PREBUILT_STATIC_JAVA_LIBRARIES := sqlcipher:libs/sqlcipher.jar
include $(BUILD_MULTI_PREBUILT)
該方法生成在 一個臨時目錄,不能自動到/system/framework下面
3、APK編譯,預設為64位,由於SO為32位,需指定,方式為:
#LOCAL_JAVA_LIBRARIES += org.apache.http.legacy
LOCAL_MULTILIB := 32
LOCAL_JNI_SHARED_LIBRARIES := libdatabase_sqlcipher libsqlcipher_android libstlport_shared
LOCAL_PRIVILEGED_MODULE := true
include $(BUILD_PACKAGE)
# Use the folloing include to make our test apk.
include $(call all-makefiles-under,$(LOCAL_PATH))
4、mm編譯時,需要刪除原有生成的arm64檔案,如果以前存在arm64庫,則APK執行時預設呼叫64的庫。
相關文章
- Java 熱載入jar包JavaJAR
- [轉]androidstudio更改優先載入系統包framework.jar的順序AndroidFrameworkJAR
- maven私服nexus上傳第三方jar包以及下載MavenJAR
- Eclipse打JAR包引用的第三方JAR包找不到的問題。EclipseJAR
- 使用Java擴充套件機制載入所有JAR包Java套件JAR
- IDEA 匯入 ***.jar包IdeaJAR
- IDEA匯入jar包IdeaJAR
- maven 工程匯入jar包MavenJAR
- Android native層動態載入so庫Android
- Androidstudio中jar包重複或jar包裡的類重複問題AndroidJAR
- java URLClassLoader 載入外部jar包中的指定的類JavaJAR
- 匯入jar包,main函式JARAI函式
- 用命令將本地jar包匯入到本地maven倉庫JARMaven
- 建立HDFS,匯入HADOOP jar包HadoopJAR
- 使用dubbo需要匯入的jar包JAR
- jar包中匯入新的類JAR
- 新增jar包到本地Maven倉庫JARMaven
- jar包JAR
- java 啟動檢視jar包載入順序並設定classpathJavaJAR
- Flutter外掛引入第三方jar包之armeabiFlutterJAR
- 教你如何下載Jdbc開發包 jarJDBCJAR
- 下載mysql的JDBC的jar包流程MySqlJDBCJAR
- 請教JBoss能不能動態載入外部jar庫JAR
- Android 開發中如何動態載入 so 庫檔案Android
- idea maven update下載未下載好的jar包IdeaMavenJAR
- Eclipse接入第三方動態庫.so方案Eclipse
- 使用struts,必需要匯入的jar包JAR
- tomcat7 與 tomcat8 載入 jar包的順序TomcatJAR
- 釋出jar包到maven中央倉庫JARMaven
- maven安裝jar包到本地倉庫MavenJAR
- httpmine jar包HTTPJAR
- java-jar啟動jar包JavaJAR
- 熱更新--動態載入frameworkFramework
- IntelliJ IDEA15匯入jar包IntelliJIdeaJAR
- myeclipse如何匯入相應的jar包EclipseJAR
- Android動態載入jar/dexAndroidJAR
- eclipse 手動新增jar包到maven庫EclipseJARMaven
- 如何將JAR包釋出到Maven中央倉庫?JARMaven