幻蓝博客 – 孤月蓝风

追寻互联网科技、Unity开发、AR/VR开发、游戏开发、Web前后端开发等技术。

幻蓝博客 – 孤月蓝风幻蓝博客 – 孤月蓝风

Unity与Android交互(二):Unity项目打包为AAR供Android App调用

开发环境:Android Studio 2.3.3 , Unity 2017.1.2

这一篇我们讲如何将 Unity 程序打包为 AAR 文件,使 Android App 可以调用。

在 Unity 5.x 时, Unity 的 Build System 中就加入了使用 Gradle 方式输出项目。

Unity中使用Gradle输出

Unity中使用Gradle输出

当使用 Gradle 方式时,就只有 Export 按钮了,而不是 Build 和 Build And Run 了。

导出之前,要记得更改 Bundle Identifier , Export 项目之后,使用 Android Studio 打开这个项目,File > New > Import project > 选择你刚才导出的目录,并点击 OK 。之后会提示你 Gradle 尚未配置,是否自动配置,点击 OK 会自动配置,点击 Cancel 需要你之后手动配置。

Unity导出Gradle打开后的提示

Unity导出Gradle打开后的提示

我们这里使用自动配置,之后 Android Studio 会运行 Gradle 进行编译,这里可能会报错:

Gradle自动配置时的报错信息

Gradle自动配置时的报错信息

我们打开 Project 面板,双击打开 Gradle Scripts 中的 build.gradle ,修改 Gradle 插件版本到 2.3.3 ,和 Android Studio 版本保持一致。

修改Gradle插件版本

修改Gradle插件版本

修改之后,点击工具栏中的 Sync Project with Gradle Files , Gradle 会重新编译,并且编译通过,不会再遇到问题。

Sync Project with Gradle Files

Sync Project with Gradle Files

打开 Project 面板中的 manifests 文件夹中的 AndroidManifest.xml 文件,注释掉 intent-filter 标签:

注释intent-filter

注释intent-filter

现在,我们继续修改 build.gradle 文件中的内容:

修改Gradle编译方式

修改Gradle编译方式

将编译方式改为 com.android.library ,并注释掉 applicationId ,项目才能被打包成 AAR 。点击菜单栏 Build > Make Project ,Android Studio 会将项目打包成 AAR 文件,并放入 build/outputs/aar 文件夹中。

至此,我们就完成了 Unity 工程打包为 AAR 的所有步骤。

注意,这里 Android Studio 和 Gradle 插件必须是 2.3.3 版本,最新的 Android Studio 3.0.1 使用时会遇到错误,包括导入 AAR 时会提示 AAR 文件过大等错误。由于我不是 Android 开发人员,不知如何解决。

如果在文中发现了 BUG ,或发现某些地方写的不够清楚,欢迎在评论中告诉我,我会完善。

项目Git地址:https://gitee.com/trlanfeng/UnityAndroid/

本文是全系列中第2 / 3篇:Unity与Android交互

文章导航