Android打包AAR及与unity通信方法

Android打包AAR及与unity通信方法

  • 一、新建项目工程
  • 二、编写桥接通信方法
  • 三、打AAR包,放到unity的Android文件夹下
  • 四、修改unity包名,打出apk

一、新建项目工程

1、新建project
Android打包AAR及与unity通信方法_第1张图片

2、新建一个Module,选择Library
Android打包AAR及与unity通信方法_第2张图片
Android打包AAR及与unity通信方法_第3张图片

新建后的AS如图:
Android打包AAR及与unity通信方法_第4张图片

3、复制unity的jar包 classes.jar,具体路径:(如:D:\Unity2019.2.12\Editor\Data\PlaybackEngines\AndroidPlayer\Variations\mono\Release\Classes),打开Project模式,选择新建的Module,粘贴到其下的Libs文件,选择导入的classes右击,选择Add As Library,把untiy jar包加入到工程中。
Android打包AAR及与unity通信方法_第5张图片
Android打包AAR及与unity通信方法_第6张图片
Android打包AAR及与unity通信方法_第7张图片
Android打包AAR及与unity通信方法_第8张图片

如下图,则导入成功
Android打包AAR及与unity通信方法_第9张图片

4、在此文件夹下新建一个Java类,用于与unity通信:
Android打包AAR及与unity通信方法_第10张图片
Android打包AAR及与unity通信方法_第11张图片

Unity相关代码:
Android打包AAR及与unity通信方法_第12张图片

5、修改module下的build.gradle,先从app下的build.gradle,复制一份,然后按照图下修改四处位置:
引入jar包:implementation files(‘libs/classes.jar’)

Android打包AAR及与unity通信方法_第13张图片

二、编写桥接通信方法

1、unity调用安卓方法
在android的MainActivity里继承UnityPlayerActivity类,创建一个方法test1
Android打包AAR及与unity通信方法_第14张图片

在unity里获取当前Activity的对象,调用test1,实现unity调用android方法

Android打包AAR及与unity通信方法_第15张图片

2、安卓调用unity方法
在unity里创建方法Test2
Android打包AAR及与unity通信方法_第16张图片

在Android的MainActivity里调用unity方法Test2
UnityPlayer.UnitySendMessage(“游戏体名”,“要调用的游戏体下的脚本名”,参数);

Android打包AAR及与unity通信方法_第17张图片

三、打AAR包,放到unity的Android文件夹下

1、打包AAR及检查操作

  1. 打包出AAR;
  2. 复制到unity项目的Android文件夹下(如:E:\TestProject\Assets\Plugins\Android);
  3. 删除AAR的libs下的jar包(不要解压,进去直接删);
  4. 检查AAR中是否有styles.xml(主题) 、drawable(app图标)等文件,没有则自己拖入AAR的res文件夹下。

Android打包AAR及与unity通信方法_第18张图片
Android打包AAR及与unity通信方法_第19张图片
Android打包AAR及与unity通信方法_第20张图片

Android打包AAR及与unity通信方法_第21张图片

Android打包AAR及与unity通信方法_第22张图片
Android打包AAR及与unity通信方法_第23张图片

2、修改unity的清单文件中的包名和安卓调用的包名
Android打包AAR及与unity通信方法_第24张图片

四、修改unity包名,打出apk

1、Debug包(默认签名,测试包)
2、release包(自定义创建签名,正式包)

你可能感兴趣的:(Unity开发,Android,unity,android,安卓,android,studio)