Unity与安卓交互
引言
在Unity的项目开发过程中,总会遇到Unity提供的方法不足以支撑安卓平台的开发,这时候我们就需要引用安卓平台本身的一些方法或者SDK来帮助我们继续开发,那么Unity和安卓原生时怎么进行交互的呢,在这里我们做一下简单的极少。
工具
- Unity:2019.4.31f1c1
- Android Studio:2020.3.1
生成jar包
此过程主要在Android Studio中完成。
创建工程
1、创建一个Empty Activity,点击Next
2、根据自己需要设置对应的项目名称和最小SDK版本,项目名称不需要和Unity包名一样,最小SDK版本需要和Unity中设置的一样。
unity中设置最小SDK
工程设置
1、删除两个无用的工程
2、修改build.gradle
- plugins下的id改为com.android.library
- 删除defaultConfig下的applicationId
3、点击sync now
4、加入Unity classes.jar
jar来源:unity工具安装目录下的\Editor\Data\PlaybackEngines\AndroidPlayer\Variations,此文件夹中有il2cpp和mono两个文件夹,根据unity的编译选择对应的文件夹下的\Release\Classes\下的classes.jar
例如:C:\Program Files\Unity\Hub\Editor\2019.4.31f1c1\Editor\Data\PlaybackEngines\AndroidPlayer\Variations\mono\Release\Classes
unity编译方式
将jar包复制到android studio工程的libs文件夹下,并且添加为库(Add As Library)。
5、这个版本的classes.jar中不包含UnityPlayerActivity.java类,需要自己手动添加。
C:\Program Files\Unity\Hub\Editor\2019.4.31f1c1\Editor\Data\PlaybackEngines\AndroidPlayer\Source
找到对应路径下的com文件夹,复制到java文件夹下。
6、修改MainActivity类,使其继承UnityPlayerActivity。
<