最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Android.mk引入第三方j(luò)ar包和so庫文件的方法

 更新時(shí)間:2018年05月07日 16:58:35   作者:陽光玻璃杯  
這篇文章主要介紹了Android.mk引入第三方j(luò)ar包和so庫文件的方法,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧

以SystemUI為例,如果需要在SystemUI中引入第三方j(luò)ar包以及so庫,可作如下處理:

首先,在frameworks\base\packages\SystemUI下新建libs目錄:

 

將需要引入的jar包放置到libs目錄下。然后修改Android.mk文件:

也就說引入jar包主要依賴的是LOCAL_PREBUILT_STATIC_JAVA_LIBRARIES和LOCAL_STATIC_JAVA_LIBRARIES。下面吧完整的Android.mk貼出來,方便拷貝。

LOCAL_PATH:= $(call my-dir)
include $(CLEAR_VARS)
LOCAL_MODULE_TAGS := optional
LOCAL_SRC_FILES := $(call all-java-files-under, src) \
 src/com/android/systemui/EventLogTags.logtags
LOCAL_STATIC_JAVA_LIBRARIES := aaa Keyguard android-support-v7-palette android-support-v4
LOCAL_JAVA_LIBRARIES := telephony-common
LOCAL_JAVA_LIBRARIES += JSRConfig

LOCAL_SHARED_LIBRARIES := libtest1 \
 libtest2

LOCAL_PACKAGE_NAME := SystemUI
LOCAL_CERTIFICATE := platform
LOCAL_PRIVILEGED_MODULE := true
LOCAL_PROGUARD_FLAG_FILES := proguard.flags
LOCAL_RESOURCE_DIR := \
 frameworks/base/packages/Keyguard/res \
 $(LOCAL_PATH)/res
LOCAL_AAPT_FLAGS := --auto-add-overlay --extra-packages com.android.keyguard

include $(BUILD_PACKAGE)
include $(CLEAR_VARS)
LOCAL_PREBUILT_STATIC_JAVA_LIBRARIES := \
 aaa:libs/aaa.jar
include $(BUILD_MULTI_PREBUILT)
include $(call all-makefiles-under,$(LOCAL_PATH))

我們把需要引入的jar包放置到了SystemUI下的libs目錄下了,并通過修改Android.mk完成了對(duì)它的引入。那么so庫怎么辦呢?上面并沒有說把它放置到哪里???

Android中,系統(tǒng)級(jí)的app使用到so庫以后,都會(huì)去system/lib目錄下去查找,所以你只需要把so庫放置到system/lib目錄下,然后在Android.mk中通過LOCAL_SHARED_LIBRARIES變量完成引用即可。我們可以通過adb把so庫push到設(shè)備的system/lib目錄下,可是,如果想要在android系統(tǒng)編譯過程中,就實(shí)現(xiàn)so庫拷貝到system/lib目錄,那怎么辦呢?這用到了Android編譯系統(tǒng)中的PRODUCT_COPY_FILES變量。

舉例來說,打開device\xx\xxx目錄下一產(chǎn)品名命名的.mk文件,搜索PRODUCT_COPY_FILES變量就會(huì)看到很多該變量的用例,比如:

# Audio configuration file
PRODUCT_COPY_FILES += \
 device/xx/xxx/audio_policy.conf:system/etc/audio_policy.conf \
 device/xx/xxx/audio_effects.conf:system/vendor/etc/audio_effects.conf \
 device/xx/xxx/mixer_paths_qrd_skuh.xml:system/etc/mixer_paths_qrd_skuh.xml \
 。。。

PRODUCT_COPY_FILES 的每一個(gè)值都是以“:”隔開,前面是源,后面是目的。比如我們?cè)赿evices/xx/xxx目錄下新建lib目錄,把libtest1.so和libtest2.so放置到lib目錄下,然后就可以通過給PRODUCT_COPY_FILES 作如下賦值,即可是的系統(tǒng)在編譯的時(shí)候完成對(duì)他們的拷貝:

#so library
PRODUCT_COPY_FILES += \
 device/xx/xxx/libs/libtest1.so:system/lib/libtest1.so \
 device/xx/xxx/libs/libtest2.so:system/lib/libtest2.so

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • Android自定義覆蓋層控件 懸浮窗控件

    Android自定義覆蓋層控件 懸浮窗控件

    這篇文章主要為大家詳細(xì)介紹了Android自定義覆蓋層控件和懸浮窗控件的相關(guān)資料,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-03-03
  • Android中方法數(shù)超限問題與啟動(dòng)優(yōu)化詳解

    Android中方法數(shù)超限問題與啟動(dòng)優(yōu)化詳解

    這篇文章主要給大家介紹了Android中方法數(shù)超限問題與啟動(dòng)優(yōu)化的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧。
    2017-11-11
  • Android 藍(lán)牙開發(fā)實(shí)例解析

    Android 藍(lán)牙開發(fā)實(shí)例解析

    本文主要介紹Android 藍(lán)牙開發(fā),這里提供實(shí)例代碼和詳細(xì)解析實(shí)現(xiàn)方法,對(duì)開發(fā)Android藍(lán)牙開發(fā)的朋友提供簡(jiǎn)單示例,有需要的朋友可以參考下
    2016-08-08
  • Android在kts中使用navigation及Args的方法

    Android在kts中使用navigation及Args的方法

    在Android項(xiàng)目中使用Kotlin腳本(kts)替代Groovy配置navigation和Args,需添加相關(guān)依賴,并在build.gradle中進(jìn)行配置,文章詳細(xì)介紹了如何在kts中使用navigation進(jìn)行頁面導(dǎo)航和參數(shù)傳遞,介紹了使用Bundle和Safe Args兩種方式安全傳遞參數(shù)
    2024-10-10
  • Android實(shí)現(xiàn)簡(jiǎn)易的音樂播放器

    Android實(shí)現(xiàn)簡(jiǎn)易的音樂播放器

    這篇文章主要為大家詳細(xì)介紹了Android實(shí)現(xiàn)簡(jiǎn)易的音樂播放器,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-05-05
  • 完美解決Android客戶端RSA解密部分亂碼的問題

    完美解決Android客戶端RSA解密部分亂碼的問題

    下面小編就為大家分享一篇完美解決Android客戶端RSA解密部分亂碼的問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2018-03-03
  • Android中使用ViewFlipper進(jìn)行手勢(shì)切換實(shí)例

    Android中使用ViewFlipper進(jìn)行手勢(shì)切換實(shí)例

    這篇文章主要介紹了Android中使用ViewFlipper進(jìn)行手勢(shì)切換的方法,以實(shí)例形式詳細(xì)講述了XML文件的定義及功能函數(shù)的實(shí)現(xiàn)過程,需要的朋友可以參考下
    2014-10-10
  • 解決Android 虛擬按鍵遮住了頁面內(nèi)容的問題

    解決Android 虛擬按鍵遮住了頁面內(nèi)容的問題

    今天小編就為大家分享一篇解決Android 虛擬按鍵遮住了頁面內(nèi)容的問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2018-07-07
  • Android中ViewPager的PagerTabStrip與PagerTitleStrip用法實(shí)例

    Android中ViewPager的PagerTabStrip與PagerTitleStrip用法實(shí)例

    這篇文章主要介紹了Android中ViewPager的PagerTabStrip與PagerTitleStrip用法實(shí)例,這兩個(gè)子控件一般被用作添加標(biāo)題,在實(shí)際效果上并不是那么好控制,使用的時(shí)候需要謹(jǐn)慎,需要的朋友可以參考下
    2016-06-06
  • 詳解Android如何獲取進(jìn)程總數(shù),內(nèi)存與任務(wù)列表

    詳解Android如何獲取進(jìn)程總數(shù),內(nèi)存與任務(wù)列表

    在Android開發(fā)中,有時(shí)我們需要監(jiān)控設(shè)備的性能,比如查看當(dāng)前運(yùn)行的進(jìn)程總數(shù),本文將介紹如何通過Android?API獲取這些信息,希望對(duì)大家有所幫助
    2025-02-02

最新評(píng)論

宜川县| 东乌珠穆沁旗| 呼玛县| 同江市| 玉林市| 平乡县| 泰来县| 东丰县| 武穴市| 宣威市| 祥云县| 呈贡县| 遵义县| 北流市| 博兴县| 巴彦县| 锡林郭勒盟| 镇康县| 前郭尔| 蒙自县| 顺昌县| 凉城县| 米林县| 商河县| 台东县| 四川省| 宜阳县| 五峰| 高邮市| 祁连县| 鹤壁市| 南郑县| 柳河县| 汉川市| 和政县| 集安市| 集安市| 平江县| 鞍山市| 济宁市| 嘉兴市|