AS中生成與導(dǎo)入Jar包

一、AS中生成Jar包

概念:將自己開發(fā)的一個(gè)類庫(kù)打包成jar包以供其他項(xiàng)目調(diào)用,這個(gè)jar包也叫SDK或者叫l(wèi)ibrary。

    1. 新建項(xiàng)目MakeMyJarDemo


      項(xiàng)目MakeMyJarDemo.png

      -2. 新建Module:mylibrary
      (1)鼠標(biāo)右鍵點(diǎn)擊app->New->選擇Module


      Module.png

      (2)選擇AndroidLibrary->點(diǎn)擊Next
      image.png

      (3)填寫名稱->點(diǎn)擊Finish


      image.png

      (4)新建項(xiàng)目功能文件MyFunctions.java
public class MyFunctions {
    public static void showLog(){
        Log.v("jar","這是MakeMyJarDemo項(xiàng)目的功能文件");
    }
    public static void showToast(Context context, String msg, TextView textView){
        textView.setText(msg);
        Toast.makeText(context, msg, Toast.LENGTH_SHORT).show();
    }
}
    1. 主工程依賴mylibrary
      (1)打開主工程的build.gradle(Module:app)文件,添加信息如下,并點(diǎn)擊Sync Now
implementation project(':mylibrary')
image.png

(2)在主工程的MainActivity中調(diào)用mylibrary的功能文件驗(yàn)證依賴成功


image.png
    1. mylibrary打包為jar包
      (1)打開build.gradle(Module:mylibrary)文件,添加信息如下,并點(diǎn)擊Sync Now
//修改jar名字+將指定jar生成的地方
task makeMyJar(type: Copy) {
    //刪除存在的
    delete 'build/libs/mysdk.jar'
    //設(shè)置拷貝的文件
    from('build/intermediates/intermediate-jars/release/')
    //打進(jìn)jar包后的文件目錄
    into('libs/')
    //將classes.jar放入build/libs/目錄下
    //include ,exclude參數(shù)來(lái)設(shè)置過濾
    //(我們只關(guān)心classes.jar這個(gè)文件)
    include('classes.jar')
    //重命名
    rename ('classes.jar', 'mysdk.jar')
}

makeJar.dependsOn(build)
image.png

備注:task makeJar中的makeJar只是一個(gè)方法名稱可以隨意取名,但是必須得和下面的makeJar.dependsOn(build)的makeJar方法名稱一致
(2)打開Terminal控制臺(tái),輸入指令 gradlew makeJar后回車即可生成jar包


image.png

備注:Terminal控制臺(tái)輸入gradlew+方法名稱時(shí),方法名稱需和上步task makeJar中的方法名保持一致。
說明:若as從來(lái)沒有生成過jar,那么第一次就會(huì)很慢,會(huì)去下載一些文件
(3)打包Success后jar文件會(huì)出現(xiàn)在mylibrary工程對(duì)應(yīng)的build->libs中(同樣arr會(huì)出現(xiàn)在outputs中)


image.png

說明:復(fù)制mysdk.jar到一個(gè)新的module中的libs目錄下,然后就可以調(diào)用jar包文件中的方法了。

二、AS導(dǎo)入Jar包

    1. 項(xiàng)目UseMyJarDemo導(dǎo)入mysdk.jar包
      (1)復(fù)制jar包至Project - > app - > libs目錄下,之后重啟AS。


      image.png
    1. 測(cè)試導(dǎo)入成功


      image.png

參考:Android studio 如何導(dǎo)入libs目錄下的jar包、libs 下面的jar包怎么導(dǎo)入android denpendencies

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 用兩張圖告訴你,為什么你的 App 會(huì)卡頓? - Android - 掘金 Cover 有什么料? 從這篇文章中你...
    hw1212閱讀 14,096評(píng)論 2 59
  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn),斷路器,智...
    卡卡羅2017閱讀 136,688評(píng)論 19 139
  • Spring Boot 參考指南 介紹 轉(zhuǎn)載自:https://www.gitbook.com/book/qbgb...
    毛宇鵬閱讀 47,285評(píng)論 6 342
  • “孩子玩滑板車把舌頭和下巴摔破了,要去醫(yī)院。你在門口等吧?!逼拮釉陔娫捓镎f。“哦?!?于是在小區(qū)門口等,心想這都是...
    杜華松閱讀 501評(píng)論 0 5
  • 前段時(shí)間,荔枝小姐來(lái)我的城市參加她朋友的婚禮,傍晚的時(shí)候,看在多年情義的份上,她拎著大包小包,打扮的花枝招展的來(lái)看...
    暖先森閱讀 2,260評(píng)論 7 26

友情鏈接更多精彩內(nèi)容