一:unity导出安卓项目,再将安卓项目导入AndroidStudio
1. unity游戏需要接入安卓sdk的话,建议是把unity项目导出安卓工程,然后把安卓工程再导入进AndroidStudio(安卓开发工具)里,原因是安卓的应用商店SDK非常多,大的小的加起来有几十家SDK,而这些SDK的文档全是安卓的。
2. unity开发工具和安卓开发工具下载,大家直接去官网下载就好了,这里就不多讲了,然后导出工程时两个工具的开发环境需要注意的地方,可以看我前面写的博客:unity新版本导出安卓工程配置JDK. SDK .NDK.Grdle遇到的兼容问题-CSDN博客
3.unity导出安卓工程:File->Build Settings,选中安卓,勾选Export Project
如果游戏项目很大,可以选择这LZ4,导出时会压缩工程,我这个就非常大,压缩完了还有2G,然后Export导出,导出后就得到一个安卓工程啦。
4.将导出的安卓工程导入AndroidStudio, 左上角File->New ->import Project, 选择刚才导出的工程后导入,导入后的工程都是这个:
5. 这个第一次导入进来后,编译可能会有很多问题,如果环境按我上面JDK .NDK哪些配置来的话,可以解决80%的问题。剩下的可以问我或者在CSDN上搜解决办法也是OK的。
6.大家导入进来后会有很多插件提示下载,这时候可以在project下的build.gradle文件里配上三个阿里的镜像资源:
maven {url "https://maven.aliyun.com/repository/google"}
maven {url "https://maven.aliyun.com/repository/public"}
maven {url "https://maven.aliyun.com/repository/gradle/plugin"}
7. 如果unity里的工程里用了第三方插件aar,那需要你把这些aar拷贝出来,这些aar和jar包在libs下,aar需要提取出来,jar包不用。
7.1 ,打开untyLibrary下的build.gradle文件,在下图位置配上:
api fileTree(dir: 'libs', include: ['*.jar'])
这个是编译时把jar包资源打进unity工程里,最后编译成一个unity.aar使用的,
7.2 aar单独拷贝出来,最新版本AS不支持直接导入aar,需要手动添加。再project下的新建一个文件夹用aar文件的名字命名.
再把aar放进去,从其他地方拷贝一个build.gradle文件,内容是下方,xxx.aar就是aar文件名
configurations.maybeCreate("default") artifacts.add("default", file('xxx.aar'))
7.3 在Project下的settings.gradle添加刚才建的文件夹,xxx就是文件夹名字(这个名字自己定义)。如果有多个在后面几个逗号,
include ':xxx',':xxx'
7.4 在上方7.1的配置那里添加aar的依赖
implementation project(path: ':app')
7.5 打开安卓项目, 这个安卓项目和unityLibrary需要在一个项目下。同样的方式安卓项目下的build.gradle去依赖unityLibrary,app就是安卓项目
implementation project(path: ':unityLibrary')
8. 打开安卓项目的 MainActivity 文件,然后继承 UnityPlayerActivity,
8.1 打开UnityPlayerActivity 文件,在里面定义登录支付一些方法:
8.2 MainActivity里重写这些方法,
8.3 如果需要游戏传入参数比较多,比如支付,可以把参数封装的Json里,转换为字符串,然后传递过来再解析
8.4 这时候就可以再MainActivity里实现登录和支付功能逻辑了,后续功能实现建议安卓开发接入吧,因为应用商店的文档都是安卓的
8.5 unity调用安卓的方法:
8.6 安卓回unity的方法:
8.7 大家后面有 SDK问题可以加QQ群: 623257187,大家相互讨论,相互进步