前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Unity与安卓交互 | Unity2019.3版本之后,在Android Studio中写代码导出aar包与Unity中使用交互的方法

Unity与安卓交互 | Unity2019.3版本之后,在Android Studio中写代码导出aar包与Unity中使用交互的方法

作者头像
呆呆敲代码的小Y
发布2022-11-20 16:29:31
2.1K0
发布2022-11-20 16:29:31
举报
请添加图片描述
请添加图片描述
  • 🎬 博客主页:https://xiaoy.blog.csdn.net
  • 🎥 本文由 呆呆敲代码的小Y 原创,首发于 CSDN🙉
  • 🎄 学习专栏推荐:Unity系统学习专栏
  • 🌲 游戏制作专栏推荐:游戏制作
  • 🌲Unity实战100例专栏推荐:Unity 实战100例 教程
  • 🏅 欢迎点赞 👍 收藏 ⭐留言 📝 如有错误敬请指正!
  • 📆 未来很长,值得我们全力奔赴更美好的生活✨
  • ------------------❤️分割线❤️-------------------------
请添加图片描述
请添加图片描述
前言
  • 由于Unity在2019.3的新版本之后,Unity的class包中的内容发生了变化。
  • 官方将UnityPlayerActivity.java单独做了一个文件夹分离了出来,所以Unity2019.3版本之后就不能跟之前一样,只复制安装磁盘 \Unity\Editor\Data\PlaybackEngines\AndroidPlayer\Variations\mono\Release\Classes路径下的jar包到AS中了
  • 还需要将UnityPlayerActivity.java也复制到AS中去才行。

这是旧版本从AS打包aar给Unity使用的方法: Unity与安卓交互 之 ✨ 在Android Studio中写代码导出aar包,在Unity中使用交互(小白完整篇)

下面来看一下新版具体的操作实例。


示例

第一步:新建一个AS项目,这一点就不多说了,与之前的类似

第二步:将class包与UnityPlayerActivity.java复制到AS项目中

与之前旧版本一致,只需要增加了将UnityPlayerActivity.java复制到AS中这一步骤。

在这里插入图片描述
在这里插入图片描述

第三步:打开UnityPlayerActivity添加包

添加内容如下:

代码语言:javascript
复制
import com.unity3d.player.IUnityPlayerLifecycleEvents;
import com.unity3d.player.UnityPlayer;
在这里插入图片描述
在这里插入图片描述

第四步:新建一个类并简单编写代码 到这里就与旧版本没什么区别了,其实也就只是增加了一步将UnityPlayerActivity.java额外复制。

在这里插入图片描述
在这里插入图片描述

第五步:修改AndroidManifest

与旧版本类似,修改报错部分,增加一行代码

代码语言:javascript
复制
 <meta-data android:name="unityplayer.UnityActivity" android:value="true"/>
在这里插入图片描述
在这里插入图片描述

第六步:Build->Make Project,等待执行完毕。

选中unitylibrary->Build->Make Module"unitylibrary",等待执行完毕。

在这里插入图片描述
在这里插入图片描述

第七步:aar文件修改

打开复制出来的aar包,将外边这个classes.jar剪切到libs文件夹下替换掉libs中原来的classes.jar包

在这里插入图片描述
在这里插入图片描述

第八步:新建Unity工程,新建文件夹Plugins/Android,编写脚本

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

这样就完成了一个简单的Unity与Android交互的方法啦!


总结

  • 官方说是为了方便 Android 端的调用所以单独将 Unity 相关内容搞成了个模块,也就是 unityLibrary。
  • 具体相关内容可以参考 官方链接
  • 如果我们还是想跟之前一样进行Unity与Android之间的交互,那就增加了第二步和第三步,其他地方与原来都是一致的操作。
  • 新版本之后也有其他方法可以同样使用Unity与Android交互,可以参考下面的内容。

新旧版本的路径

2019.2.3版本之前的路径: class包路径是在 安装Unity的目录下,例如:

代码语言:javascript
复制
安装磁盘 \Unity\Editor\Data\PlaybackEngines\AndroidPlayer\Variations\mono\Release\Classes

2019.3 之后的路径:

代码语言:javascript
复制
安装磁盘 \Unity 2019.4.38f1\Editor\Data\PlaybackEngines\AndroidPlayer\Source\com\unity3d\player
在这里插入图片描述
在这里插入图片描述

其他相关信息介绍

在 Unity 2019.2.3+ 使用arm64 + IL2CPP导出的原生安卓项目会包括两个gradle项目

  • launcher
  • unityLibrary

Unity官方声明这样是为了把Unity的项目完全剥离出来,方便之后二次处理

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

其他内容参考链接如下: https://www.pudn.com/news/628324a63b39c078242b6985.html https://blog.csdn.net/d773689630/article/details/117279407

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2022-11-14,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 前言
  • 示例
  • 总结
    • 新旧版本的路径
      • 其他相关信息介绍
      领券
      问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档