app-libs
android-libs
app-libs
android-libs
创建gamehelper类,添加mainactivity变量,unity用于通信的物体字段,unity用于接收通信的方法名称,以及mainactivity的初始化方法
将unity安装目录下的classes.jar拷贝到android studio的app-libs下
app - build.gradle下
apply plugins : 'com.android.library'生成jar和aar包
jar包只有代码
aar包包含代码和资源
PlatMsgManager回顾
首先new一个gameobject指定名称,并且添加组件platformscript脚本,指定给自己的字段
platformscript主要是接收json字段以及分发给自己的结构体
安卓工程的名字是unity的package name
安卓package name和unity的包名保持一致
unity发送消息到平台方法
unity从平台获取整性数据
接收到消息后,解析消息并执行
用队列储存消息
从底层拿到gamehelper类需要用宏限制,只在安卓和非unity编辑器下运行
androidjavaclass类也一样
创建平台管理类,继承单例类
初始化方法
定义安卓java类
了解配置
package:包名
installLocation:安装位置
修改基本配置
1.包名要修改成AS文件夹下的继承于unityPlayerActivity
2.添加activity配置
3添加appID
unionID 同一用户不同平台 是相同的
openID 用户的基本信息
1.创建java类GameHelper
1.生成jar/aar
修改build.gradle第一行为apply plugin 'com.android.library'->注释applicationId "com.Ocean.RFramework"->Build(Rebuild)->
aar在app/build/outputs/app-debug.aar,jar在app/build/intermediates/packaged-classes/debug/classes.jar
2.移动并重命名jar
为了避免生成jar后,每次都要手动移动并改名jar包。可以进行以下操作:
在build.gradle最后面写命令行方法:
task makeJar(type:Copy){
delete 'build/libs/ocean.jar'
from('build/intermediates/packaged-classes/debug/')
into('build/libs/')
include('classes.jar')
rename('classes.jar','ocean.jar')
}
->
在Terminal中执行gradles makejar
aar:包括代码(src)、依赖库(libs)、资源(res)。适合接入底层多(复杂的sdk),不需要自己拷贝库和资源之类的。多个sdk很容易发生库冲突,推荐jar
jar:纯粹只有代码(src)。需要自己拷贝依赖库和依赖资源