Unity 项目开发中时常有集成 Android 第三方 SDK 的需求,好比接入第三方推送,分享等功能。而第三方 SDK 的集成文档提到的每每是基于原生 Android 项目集成。android
第一种 导出 gradle 项目进行集成app
导出 gradle 项目的方式能够直接将项目导入 AndroidStudio 中进行集成,而此时能够直接按照第三方集成文档完成集成。gradle
第二种 直接在 Unity 中集成ui
有些公司是基于 Unity 项目结构进行自动打包的,这样导出 gradle 项目的集成方式就不适用于自动打包流程,只能直接在 Unity 项目中直接集成 SDK 才能知足需求。这时候基于原生 Android 项目的 SDK 的集成步骤对应 Unity 中就要稍做修改。插件
本文以集成极光推送厂商通道为例介绍如何在 Unity 集成 第三方SDK。debug
JPush 是极光官方的推送 SDK,集成后能够经过调用 API 推送消息,而且官方提供了对应 Unity 平台使用的插件 jpush-unity3d-plugin。首先参照插件集成方式集成基础版本的JPush,这里以 JPush v3.1.6 为例,对应插件版本 v3.2.7 ,集成成功后可以成功接受后台推送,而且 Unity 对应结构:3d
极光推送 VIP 服务提供了切换包括小米,华为,魅族等各个平台厂商通道服务,切换系统级别的推送通道,提升推送送达率,详情联系商务。xml
注意,厂商通道集成成功的前提是基础版已经能成功收到推送。blog
华为通道为例token
获取到对应 v3.1.6 的厂商通道文档,打开华为集成指南能够看到大体步骤:
如今咱们要集成厂商通道怎么作:
第一种方式就不说了,下面对应步骤介绍第二种集成方式:
1.增长华为HMS SDK的推送包及资源文件
2.增长support v4包
4.配置HMS SDK Push必须的组件
5.配置接收 HMS 消息的广播接收器
6.替换 HMS 的 appid
走完这七步集成就结束了,对应的 Unity 结构:
而后调用推送初始化和打开 debug 模式。运行应用并查看初始化 log,系统要求 EMUI4.1 或往上,集成成功会在 log 中打印华为 token 信息。
除了上述集成方式,也能够在 AS 中新建 module 集成上述 jar 包,并打包成 aar 给 Unity 使用。极光的推送插件就是这样作的,因此能够直接下载极光插件源码,集成完直接统一打包成 aar 使用。 须要注意的是,已是 aar 的文件没法打包,好比上述的华为通道中的 HMSSdk-agent.aar 没法打包进插件,仍是得单独放在 plugin/android 下编译。