Android studio 创建aar包给Unity使用
1、aar 是什么? 和 Jar有什么区别
-
aar 和 jar包 都是压缩包,可以使用压缩软件打开
-
jar包 用于封装 Java 类及其相关资源
-
aar 文件是专门为 Android 平台设计的 ,可以包含Android的专有内容,比如AndroidManifest.xml 文件 , 资源文件 等等
2、在Android studio中创建 aar
2.1 创建项目
这个对于我来说很难,没用过Android studio
,没用过gradle
,搞起来一脸懵逼。接下来一步一步跟我来
打开Android studio,file->new project 创建一个项目承载这个模块,接着选择 Phone and Tablet
这里要注意选择Java
作为编程语言,以及Groovy
作为gradle
的语言,接着finish
就好了
等待一会整个项目就完成了,这里我们切换到project
视图,而不是默认的Android
视图
2.2 清理项目
打开项目文件夹,直接删除app
文件夹,然后打开settings.gradle
修改
去除 include ':app'
,最终整个项目结构如下
2.3 创建aar项目
file
-> new module
,然后选择 Android Library
,如下图
Finish
之后,最终整个项目如下图
随便创建一个类,接着我们开始打包aar
2.4 打包aar
最简单的打包方式使用Android studio
内置的打包方式,
方式1:在 Android Studio 中
-
Build → Make Project
-
Build → Build Bundle(s) / APK(s) → Build APK(s)
方式2:使用gradle打包
打开右侧 gradle边栏,使用assemble
方式3:直接使用gradle命令打包
切换到当前项目的根目录,使用
./gradlew assembleRelease
进行打包
2.5 打包所在地址
当前模块的build/outputs目录下有打包好的aar
把这东西交给unity同学使用就行了,
具体的使用可以看这篇文章:unity调试Android,C# 直接访问Java代码
3、关于gradle
gradle 咋说呐,不太懂,简单理解就是和maven
同样的东西
gradle 就是用编程的方式控制编译的过程,这玩意太灵活了,对于我来说能用就完了
3.1 gradle同步
在最初的时候没有gradle的工具菜单,都是使用方式三进行打包
设置完build.gradle
一般会弹出一个sync now
的按钮,如果同步不成功 可以强制同步
File
-> Sync Project with Gradle File
s,这样gradle
就可以了。
3.2 gradle文件说明
build.gradle(Project:LibContainer)
是整个项目的编译文件,也就是会编译所有模块
build.gradle(Module:mylibrary)
是类库的编译文件,只会编译当前模块
settings.gradle
是整个项目的通用设置,类似Maven
的父 pom.xml
gradle.bat
是 gradle
的命令
rules.pro
是Android
用来混淆代码的,可以无视
总体来说整个架构和Maven的父子模块很类似