Sean's Note: How to check AAR's dependencies?

2016年6月14日 星期二

How to check AAR's dependencies?

以最近很火紅的 FireBase 為例,想要使用 Analytics 的功能,需要引用
com.google.firebase:firebase-analytics:9.0.2
等等? 有人說不是應該是 com.google.firebase:firebase-core:9.0.2 嗎?
其實兩者都對,com.google.firebase:firebase-core:9.0.2 的 dependency 就是
com.google.firebase:firebase-analytics:9.0.2,要怎麼看 AAR 的 dependencies 呢?
首先,Android Studio 把預載好的 AARs 放在以下的目錄:
C:\Users\{UserName}\AppData\Local\Android\sdk\extras\google\m2repository

所以我們找到了 firebase-core:9.0.2 的目錄:
C:\Users\{UserName}\AppData\Local\Android\sdk\extras\google\m2repository\com\google\firebase\firebase-core

資料夾裡有個神秘的檔案 "firebase-core-9.0.2.pom",打開看看:
<project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
xmlns="http://maven.apache.org/POM/4.0.0" 
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <groupId>com.google.firebase</groupId>
  <artifactId>firebase-core</artifactId>
  <version>9.0.2</version>
  <packaging>aar</packaging>
  <dependencies>
    <dependency>
      <groupId>com.google.firebase</groupId>
      <artifactId>firebase-analytics</artifactId>
      <version>9.0.2</version>
      <scope>compile</scope>
      <type>aar</type>
    </dependency>
  </dependencies>
</project>

答案揭曉,原來 com.google.firebase:firebase-core:9.0.2 根本就是 dependent on com.google.firebase:firebase-analytics:9.0.2 嘛!

沒有留言:

張貼留言