快速集成华为AGC-AppLinking服务-unity平台html
咱们应用须要使用跨平台的分享连接,恰好华为AppGallery Connect的AppLinking服务知足咱们的使用场景。java
关于集成步骤,官网的资料写的有点多,我总结一下步骤:json
建立应用,开通AppLinking服务而且建立连接签注。浏览器
在Unity项目里集成AppLinking SDK。app
在Unity里导入HuaweiService的package。maven
建立AppLinking。ide
接收AppLinking连接而且测试。测试
一、在AGC控制台,建立应用, 或者使用已有的应用),在界面上找到 个人项目 -> 增加–>AppLinking,点击当即开通 。gradle
二、在刚刚开通的AppLinking下面,点击连接前缀页签,点击添加连接前缀,根据须要建立一个现网惟一的前缀。
系统会自动帮你检测,保证你域名的全网惟一。ui
首先须要在unity项目里开通配置好安卓环境:
一、 在Edit-Project Setting-Player-Publish Setting中启用Android的自定义清单和gradle
注意:进行此步操做前须要先在Unity Hub中安装Android编译依赖。以下图:
二、在AGC个人项目 -> 项目设置–> 常规 下面,下载agconnect-services.json文件到你的unity项目的Assets / Plugins / Android路径下。
三、在Other Setting中配置包名:注意须要和AGC官网的包名保持一致:
四、配置项目级gradle,此处对应Assets\Plugins\Android路径下的baseProjectTmeplate.gradle文件,添加以下内容
allprojects { buildscript { repositories { maven { url 'https://developer.huawei.com/repo/' } } } repositories { maven { url 'https://developer.huawei.com/repo/' } } }
五、配置应用级gradle,此处对应Assets\Plugins\Android路径下的LauncherTmeplate.gradle文件,添加以下内容:
dependencies { implementation 'com.huawei.agconnect:agconnect-applinking:1.4.1.300' }
一、先将对应的package导入到工程里:能够直接在unity的window-asset-store中,直接搜索huawei,下载获取。或者能够直接使用此连接下载:
二、下载完成后,在Unity中点击assets – Import package,而后,而后选择须要的包,点击Import便可
有两种方式建立AppLinking一种是直接在AGC界面上建立,另一个是在unity项目里面用代码的API接口建立:下面就只介绍在Unity 项目中建立了。
点击GameObject- UI –Button建立两个按钮:按钮Text分别为create和share,点击按钮,而后在右侧选择 Add Component, 建立而且添加一个Script文件。
在testapp的Script文件中,而且添加以下方法:
using System.Collections; using System.Collections.Generic; using UnityEngine; using HuaweiService.AppLinking; using HuaweiService; public class testApp : MonoBehaviour { private const string URI_PREFIX = "https://testcocos1203.drcn.agconnect.link"; private const string DEEP_LINK = "https://developer.huawei.com/consumer/cn/service/josp/agc/index.html"; void Start() { } void Update() { } public void createLongLink() { AGConnectAppLinking.getInstance(); AppLinking.Builder builder = createBuilder(); Uri applinkingUri = builder.buildAppLinking().getUri(); var link = applinkingUri.toString(); Debug.Log ("AppLinking create" + link); GUIUtility.systemCopyBuffer = link; } public AppLinking.Builder createBuilder(){ return AppLinking.newBuilder() .setUriPrefix(URI_PREFIX) .setDeepLink(Uri.parse(DEEP_LINK)) .setAndroidLinkInfo( AppLinking.AndroidLinkInfo.newBuilder() .build()); } public void OpenLink() { var activity = new Activity(); var intent = new Intent(); intent.setData(Uri.parse(GUIUtility.systemCopyBuffer)); activity.startActivity(intent); } }
回到Unity界面,点击按钮,而后在按钮右侧找到click,添加对应的控件:
一样的方法,为share按钮也添加按钮方法。
注意:能够将create按钮建立的.cs文件拖动到share按钮右侧面板的“add component”区域进行复用,添加click事件。
两个步骤,一个是配置过滤器,一个是配置getAppLinking方法。
一、 配置manifest文件:注意这里是将DeepLink的域名的Scheme配置进去:
例如个人DeepLink是 DEEP_LINK = 'https://developer.huawei.com/cn/';
那么manifest文件就须要这样配置
一、应用运行之后,点击Create按钮,建立一个AppLinking连接, 而后点击share按钮,将按钮分享到浏览器。
二、 此时浏览器能够直接拉起应用,表示连接使用正常。
集成简单,SDK依赖体积小,能够实现跨平台的分享,Android和iOS均可以支持,不须要在不一样的平台作不一样的适配了,节约工做量。
运营作推广能够再AGC界面上建立,开发作分享功能能够在端侧用代码建立,简直完美。
参考文档:
华为AGC AppLinking服务开发文档:https://developer.huawei.com/consumer/cn/doc/development/AppGallery-connect-Guides/agc-applinking-introduction
Unity的AppLinking服务开发文档: https://docs.unity.cn/cn/Packages-cn/com.unity.hms@1.3/manual/applinking.html#integrating-huawei-analytics-kit
Unity Editor安装和Apk打包:https://developer.huawei.com/consumer/cn/forum/topic/0204405811539110247?fid=18
原文连接:https://developer.huawei.com/consumer/cn/forum/topic/0201428957991340017?fid=0101271690375130218
原做者:Mayism