前言
jar与aar差异
*.jar:只包含了class文件与清单文件 ,不包含资源文件,如图片等所有res中的文件。
*.aar:包含所有资源 ,class 以及 res 资源文件全部包含
1、将app-build.gradle的apply plugin: ‘com.android.application’修改成apply plugin: ‘com.android.library’,注释applicationId,使我们的框架作为library;
//apply plugin: 'com.android.application'
apply plugin: 'com.android.library'
defaultConfig {
// applicationId "com.sunsky.aardemo"
……
}
2、将manifest中launcher去掉:
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:roundIcon="@mipmap/ic_launcher_round"
android:supportsRtl="true"
android:theme="@style/AppTheme"
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
3、导出 AAR
打开 Andriod Studio 右上角的Gradle projects
,依次展开aardemo -> app -> Tasks -> build
,双击 assemble

这时打开文件夹 app -> build -> outputs -> aar
,将看到自动生成的app-debug.aar
和app-release.aar

4、Project引用 AAR(本地)
4.1将aar文件放入libs目录里面
4.2 在app目录下的build.gradle
文件中添加以下内容
implementation(name: 'app-release', ext: 'aar')//app-release为文件名称
网友评论