快速集成华为AGC-AppLinking服务-iOS平台
<p>我们应用需要使用跨平台的分享链接,刚好华为AppGallery Connect的AppLinking服务满足我们的使用场景。</p><p>关于集成步骤,官网的资料写的有点多,我总结一下步骤</p>
<p> i. 创建应用,开通AppLinking服务</p>
<p> ii. 创建一个链接前缀</p>
<p> iii. 在Android项目里集成AppLinking SDK</p>
<p> iv. 创建AppLinking</p>
<p> v. 接收AppLinking链接并且测试。</p>
<h1 id="1创建应用开通applinking服务">1、创建应用,开通AppLinking服务</h1>
<p>在AGC控制台,创建应用, 或者使用已有的应用,在界面上找到 我的项目 -> 增长–>AppLinking,点击立即开通 。</p>
<p>开通好以后,记得去 <strong>我的项目 -> 项目设置–> 常规</strong> 下面,下载<strong>agconnect-services.plist</strong>文件到你的XCode项目的项目路径下。</p>
<p><img src="https://img-blog.csdnimg.cn/20210204165213863.jpg?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NDcwODI0MA==,size_16,color_FFFFFF,t_70#pic_center"></p>
<p>开通好以后,记得去 <strong>我的项目 -> 项目设置–> 常规</strong> 下面,下载<strong>agconnect-services.plist</strong>文件到你的XCode项目的项目路径下。</p>
<p><img src="https://img-blog.csdnimg.cn/20210204165252465.jpg#pic_center"></p>
<h1 id="2创建一个链接前缀">2、创建一个链接前缀</h1>
<p>在刚刚开通的AppLinking下面,点击<strong>链接前缀</strong>页签,点击<strong>添加链接前缀</strong>,根据需要创建一个现网唯一的前缀。</p>
<p>系统会自动帮你检测,保证你域名的全网唯一。</p>
<p><img src="https://img-blog.csdnimg.cn/20210204165342494.jpg?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NDcwODI0MA==,size_16,color_FFFFFF,t_70#pic_center"></p>
<p><img src="https://img-blog.csdnimg.cn/2021020416540264.jpg?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NDcwODI0MA==,size_16,color_FFFFFF,t_70#pic_center"></p>
<h1 id="3在ios项目里面集成applinking-sdk">3、在iOS项目里面集成AppLinking SDK</h1>
<p>1、打开命令行窗口,导航至Xcode项目所在的位置。</p>
<p>2、在命令行窗口执行podinit命令创建Podfile文件。</p>
<p><img src="https://img-blog.csdnimg.cn/20210204165432463.jpg#pic_center"></p>
<p>3、打开podfile文件,在podfile中添加AGC基础SDK依赖的pod。</p>
<pre><code class="language-java">pod 'AGConnectCore'
pod 'AGConnectAppLinking'
</code></pre>
<p><img src="https://img-blog.csdnimg.cn/20210204165523799.jpg?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NDcwODI0MA==,size_16,color_FFFFFF,t_70#pic_center"></p>
<p>4、在命令行窗口执行pod install安装pod,</p>
<p>5、初始化AGC SDK : 在项目的AppDelegate.m文件中导入头文件<AGConnectCore/AGConnectCore.h> ,</p>
<p>并且在在application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions 的方法中添加如下代码:</p>
<pre><code class="language-java">#import "AppDelegate.h"
#import <AGConnectCore/AGConnectCore.h>
@implementation AppDelegate
- (BOOL)Application:(UIApplication *)Application didFinishLaunchingWithOptions: (NSDictionary *)launchOptions {
// Override point for customization after Application launch.
;//初始化
return YES;
}
</code></pre>
<p><img src="https://img-blog.csdnimg.cn/20210204165617968.jpg?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NDcwODI0MA==,size_16,color_FFFFFF,t_70#pic_center"></p>
<h1 id="4创建applinking">4、创建AppLinking</h1>
<p>有两种方式创建AppLinking一种是直接在AGC界面上创建,另外一个是在Android项目里面用代码的API接口创建:</p>
<h2 id="41创建applinking">4.1创建AppLinking:</h2>
<p>1、界面入口如下:点击创建AppLinking,然后根据步骤一步一步创建即可。</p>
<p><img src="https://img-blog.csdnimg.cn/20210204165714396.jpg?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NDcwODI0MA==,size_16,color_FFFFFF,t_70#pic_center"></p>
<p>2、默认的深度链接配置,我就直接随意找了一个华为官网的。注意Android的深度链接的配置。</p>
<p><img src="https://img-blog.csdnimg.cn/20210204165743190.jpg?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NDcwODI0MA==,size_16,color_FFFFFF,t_70#pic_center"></p>
<p>3、安卓链接行为,配置为:在Android应用中打开。</p>
<p><img src="https://img-blog.csdnimg.cn/20210204165807172.jpg?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NDcwODI0MA==,size_16,color_FFFFFF,t_70#pic_center"></p>
<p>创建好以后,就可以复制下来使用了</p>
<p><img src="https://img-blog.csdnimg.cn/20210204165834238.jpg?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NDcwODI0MA==,size_16,color_FFFFFF,t_70#pic_center"></p>
<h2 id="42端侧代码创建applinking">4.2端侧代码创建AppLinking</h2>
<p>1、iOS的界面布局如下,添加三个button控件用于创建和拷贝AppLinking;四个label控件,用于展示创建的链接;</p>
<p><img src="https://img-blog.csdnimg.cn/20210204165914329.jpg?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NDcwODI0MA==,size_16,color_FFFFFF,t_70#pic_center"></p>
<p>2、先声明对应的参数:</p>
<p><img src="https://img-blog.csdnimg.cn/20210204165938927.jpg#pic_center"></p>
<p>3、创建链接:<br>
我这里iOS的深度链接设置为:agckit://android/detail<br>
Android的深度链接设置为:agckit://android/detail</p>
<p><img src="https://img-blog.csdnimg.cn/20210204170014593.jpg?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NDcwODI0MA==,size_16,color_FFFFFF,t_70#pic_center"></p>
<p>4、拷贝对应的长链接和短连接</p>
<p><img src="https://img-blog.csdnimg.cn/20210204170042426.jpg#pic_center"></p>
<p>5、拷贝链接的方法如下</p>
<p><img src="https://img-blog.csdnimg.cn/2021020417011832.jpg#pic_center"></p>
<p><img src="https://img-blog.csdnimg.cn/20210204170142145.jpg#pic_center"></p>
<h1 id="5接收相关applinking">5、接收相关AppLinking</h1>
<p>1、生成域名的资产校验文件:需要现在AGC的项目设置界面,配置对应的团队ID(<strong>此团队ID为苹果 开发者网站-Membership – Team ID</strong>)</p>
<p><img src="https://img-blog.csdnimg.cn/20210204170227110.jpg?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NDcwODI0MA==,size_16,color_FFFFFF,t_70#pic_center"></p>
<p>2、配置完成后,AGC会为默认域名自动生成资产校验文件,资产校验文件生成后,您可前往“https://your_applinking_url_prefix/apple-app-site-association”查看。</p>
<p><img src="https://img-blog.csdnimg.cn/20210204170253303.jpg#pic_center"></p>
<p>3、配置自定义Schema:</p>
<p><img src="https://img-blog.csdnimg.cn/20210204170317809.jpg?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NDcwODI0MA==,size_16,color_FFFFFF,t_70#pic_center"></p>
<p>4、接收链接的代码设置:打开AppDelegate.m文件,在系统启动方法中添加handleAppLinking方法来处理接收到链接事件。</p>
<p><img src="https://img-blog.csdnimg.cn/20210204170346779.jpg?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NDcwODI0MA==,size_16,color_FFFFFF,t_70#pic_center"></p>
<p>5、判断接收到的链接是否是App Linking链接,并返回App是否可以处理此链接。</p>
<p><img src="https://img-blog.csdnimg.cn/20210204170410390.jpg#pic_center"></p>
<p>对于自定义Scheme链接</p>
<p>在application: openURL: options:方法中先调用AGCAppLinking的sharedInstance方法获取单例对象,再调用此对象的openDeepLinkURL方法处理</p>
<p><img src="https://img-blog.csdnimg.cn/2021020417043244.jpg#pic_center"></p>
<h1 id="6打包测试查看现象">6、打包测试,查看现象</h1>
<p>1、验证创建链接:<br>
点击CreatLink按钮:可以正确生成长链接和短连接</p>
<p><img src="https://img-blog.csdnimg.cn/20210204170516465.jpg?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NDcwODI0MA==,size_16,color_FFFFFF,t_70#pic_center"></p>
<p>2、验证通过链接拉起应用</p>
<p>点击CopyShortLink,将链接拷贝到浏览器:通过浏览器中输入生成的AppLinking,可以拉起应用</p>
<p><img src="https://img-blog.csdnimg.cn/20210204170556847.jpg?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NDcwODI0MA==,size_16,color_FFFFFF,t_70#pic_center"></p>
<h1 id="7总结">7、总结</h1>
<p>集成简单,SDK依赖体积小,可以实现跨平台的分享,Android和iOS都可以支持,不需要在不同的平台做不同的适配了,节约工作量。</p>
<p>运营做推广可以再AGC界面上创建,开发做分享功能可以在端侧用代码创建,简直完美。</p>
<p> 欲了解更多详情,请参见:</p>
<p> 华为AGC AppLinking服务开发文档:https://developer.huawei.com/consumer/cn/doc/development/AppGallery-connect-Guides/agc-applinking-introduction</p>
<hr>
<p>原文链接:https://developer.huawei.com/consumer/cn/forum/topic/0201406757244400287?fid=0101271690375130218</p>
<p>原作者:Jessyyyyy</p><br><br>
来源:https://www.cnblogs.com/developer-huawei/p/14373816.html
頁:
[1]