Unity 下集成第三方原生 SDK,以極光廠商通道爲例

Unity中集成三方SDK有兩種方式:

Unity 項目開發中時常有集成 Android 第三方 SDK 的需求,好比接入第三方推送,分享等功能。而第三方 SDK 的集成文檔提到的每每是基於原生 Android 項目集成。android

第一種 導出 gradle 項目進行集成app

導出 gradle 項目的方式能夠直接將項目導入 AndroidStudio 中進行集成,而此時能夠直接按照第三方集成文檔完成集成。gradle

第二種 直接在 Unity 中集成ui

有些公司是基於 Unity 項目結構進行自動打包的,這樣導出 gradle 項目的集成方式就不適用於自動打包流程,只能直接在 Unity 項目中直接集成 SDK 才能知足需求。這時候基於原生 Android 項目的 SDK 的集成步驟對應 Unity 中就要稍做修改。插件

舉例

本文以集成極光推送廠商通道爲例介紹如何在 Unity 集成 第三方SDK。debug

JPush

JPush 是極光官方的推送 SDK,集成後能夠經過調用 API 推送消息,而且官方提供了對應 Unity 平臺使用的插件 jpush-unity3d-plugin。首先參照插件集成方式集成基礎版本的JPush,這裏以 JPush v3.1.6 爲例,對應插件版本 v3.2.7 ,集成成功後可以成功接受後臺推送,而且 Unity 對應結構:3d

廠商通道

極光推送 VIP 服務提供了切換包括小米,華爲,魅族等各個平臺廠商通道服務,切換系統級別的推送通道,提升推送送達率,詳情聯繫商務。xml

注意,廠商通道集成成功的前提是基礎版已經能成功收到推送。blog

華爲通道爲例token

獲取到對應 v3.1.6 的廠商通道文檔,打開華爲集成指南能夠看到大體步驟:

如今咱們要集成廠商通道怎麼作:

  • 第一種:導出 gradle 項目的集成方式,直接對應上面步驟配置便可。
  • 第二種:直接在 Unity 中集成。

第一種方式就不說了,下面對應步驟介紹第二種集成方式:

1.增長華爲HMS SDK的推送包及資源文件

  • 將third-push/huawei/res裏面的資源複製到工程/res中對應的目錄
  • 將third-push/huawei/libs中的包添加到工程/libs目錄下。 --------------- 對應到 Unity 就是 ----------------
  • 將 third-push/huawei/res 裏面的資源複製到工程 plugins/android/res 中對應的目錄,res 不存在就新建一個。
  • 將third-push/huawei/libs中的包添加到工程plugins/android目錄下,與 jpush.aar 同級。

2.增長support v4包

  • JPush 3.0.9 版本後不須要添加,略過 3.修改 minSdkVersion 的值

4.配置HMS SDK Push必須的組件

5.配置接收 HMS 消息的廣播接收器

6.替換 HMS 的 appid

  • 這四步對應文檔修改 plugin/android/AndroidManifest.xml 便可。 7.在build.gradle中配置在華爲後臺添加的指紋證書對應的簽名
  • 這步要保證你的應用簽名和在華爲聯盟後臺註冊的指紋簽名證書一致,請仔細檢查。

走完這七步集成就結束了,對應的 Unity 結構:

而後調用推送初始化和打開 debug 模式。運行應用並查看初始化 log,系統要求 EMUI4.1 或往上,集成成功會在 log 中打印華爲 token 信息。

擴展

除了上述集成方式,也能夠在 AS 中新建 module 集成上述 jar 包,並打包成 aar 給 Unity 使用。極光的推送插件就是這樣作的,因此能夠直接下載極光插件源碼,集成完直接統一打包成 aar 使用。 須要注意的是,已是 aar 的文件沒法打包,好比上述的華爲通道中的 HMSSdk-agent.aar 沒法打包進插件,仍是得單獨放在 plugin/android 下編譯。

相關文章
相關標籤/搜索