AndroidStudio导入本地aar文件

作者: JxYoung | 来源:发表于2016-12-14 16:01 被阅读305次

平时写一些Demo玩的时候经常会用到重复的操作,比如打印Log,而Android原生的Log每次使用都要加上tag:

Log.e(String tag, String msg);

而我习惯将tag全都写成"yjx"便于我在一个Logcat过滤器中查看所有我打的Log,即:

Log.e("yjx", "Hello");

这样我每次打Log都要写从、懒惰如我,像这种重复代码都不想写?于是我自己写了一个Log库(LogUtils),简化了打印Log的API:

package com.jx.logutils;
public class Log {    
  public Log() {}    
  public static void e(String msg) {        
      if(msg != null  && msg.length() > 0) {            
          android.util.Log.e("yjx", msg);        
      }    
  }
}

这里我默认Log的tag全是“yjx”,这样在查看Log的时候我就可以只用一个tag(“yjx”)来观察所有日志了,而不用每次打Log的时候都要写一个:

Log.e("yjx", "msg");

而是:

Log.e("msg");

当然,这个库极其简单,只不过几行代码,只是我用来偷懒用的。

那么问题来了,如果我在别的项目中也想使用这个库,不可能每次使用都要重新撸一遍吧,那怎么在别的项目中是使用这个库呢?

第一步: 将aar文件拷贝到libs目录(将工程样式改为Project即可看到libs目录)

第二步: 修改build.gradle 配置文件

repositories {  
    flatDir {  
       dirs 'libs'  // 声明添加libs文件夹为库
    }  
}  
dependencies {   
    compile(name:'logutils', ext:'aar')  // 添加logutils.aar库为倚赖
}  

修改后的build.gradle :


第三步: 点击编译按钮重新编译

OK!

效果如下,输入Log代码提示中就出现了我们的LogUtils库中的Log类:

好啦,大功告成!

另外:

Q1:怎么查看导入成功的aar库中的文件?
A1: build -> intermediates -> exploded-aar -> logutils -> jars -> classes.jar
代码都在这个jar包里呢。

Q2:本地jar包怎么导入呢?
A2:这个就更简单了,直接将jar包拷贝到libs目录,然后重新编译即可。
之所以这么简单是因为我们的Android工程app Moudle的build.gradle配置文件中默认给我们配置好了:

dependencies {  
    compile fileTree(include: ['*.jar'], dir: 'libs')  
} 

为啥不对aar这么好?

相关文章

网友评论

    本文标题:AndroidStudio导入本地aar文件

    本文链接:https://www.haomeiwen.com/subject/jdiimttx.html