在Android開發中,咱們老是會引入其餘第三方的庫或者資源等,有時候是添加一個jar文件,有時候添加一個aar文件,那麼這兩種類型的文件有什麼區別嗎?詳情請看下文。安全
1、描述。工具
1. *.jar,JAR 文件就是 Java Archive File,顧名思意,它的應用是與 Java 息息相關的,是 Java 的一種文檔格式。只包含了class文件與清單文件 ,不包含資源文件,如圖片等全部res中的文件。找一個jar文件,而後修改後綴名爲‘zip’或者‘rar’格式,而後解壓該文件,打開解壓後的文件夾,截圖以下所示:佈局
點擊‘com‘文件夾就會看到裏面所有是‘.class’文件字體
PS: JAR 文件格式以流行的 ZIP 文件格式爲基礎。與 ZIP 文件不一樣的是,JAR 文件不只用於壓縮和發佈,並且還用於部署和封裝庫、組件和插件程序,並可被像編譯器和 JVM 這樣的工具直接使用。在 JAR 中包含特殊的文件,如 manifests 和部署描述符,用來指示工具如何處理特定的 JAR。JAR(Java Archive,Java 歸檔文件)是與平臺無關的文件格式,它容許將許多文件組合成一個壓縮文件。爲 J2EE 應用程序建立的 JAR 文件是 EAR 文件(企業 JAR 文件)。JAR 文件格式提供了許多優點和功能,其中不少是傳統的壓縮格式如 ZIP 或者 TAR 所沒有提供的。它們包括: 安全性、減小下載時間、傳輸平臺擴展、包密封、包版本控制、可移植性插件
2. *.aar,AAR(Android Archive)包是一個Android庫項目的二進制歸檔文件。咱們隨便找一個aar文件,而後修改後綴名爲‘zip’或者‘rar’格式,而後解壓該文件,打開解壓後的文件夾,截圖以下所示:(每一個aar解壓後的內容可能不徹底同樣,可是都會包含AndroidManifest.xml,classes.jar,res,R.txt)版本控制
*.aar文件中包含全部資源,class以及res資源文件。xml
小結。blog
在什麼狀況下使用*.jar文件?在什麼狀況下使用*.aar文件呢?圖片
若是你只是一個簡單的類庫那麼使用生成的*.jar文件便可;若是你的是一個UI庫,包含一些本身寫的控件佈局文件以及字體等資源文件那麼就只能使用*.aar文件。ip