快速集成华为AGC-AppLinking服务-iOS平台

我们应用需要使用跨平台的分享链接,刚好华为AppGallery Connect的AppLinking服务满足我们的使用场景。

关于集成步骤,官网的资料写的有点多,我总结一下步骤

   i. 创建应用,开通AppLinking服务

   ii. 创建一个链接前缀

   iii. 在Android项目里集成AppLinking SDK

   iv. 创建AppLinking

  v. 接收AppLinking链接并且测试。

1、创建应用,开通AppLinking服务

AGC控制台,创建应用, 或者使用已有的应用,在界面上找到 我的项目 -> 增长–>AppLinking,点击立即开通 。

开通好以后,记得去 我的项目 -> 项目设置–> 常规 下面,下载agconnect-services.plist文件到你的XCode项目的项目路径下。

快速集成华为AGC-AppLinking服务-iOS平台_第1张图片

开通好以后,记得去 我的项目 -> 项目设置–> 常规 下面,下载agconnect-services.plist文件到你的XCode项目的项目路径下。

快速集成华为AGC-AppLinking服务-iOS平台_第2张图片

2、创建一个链接前缀

在刚刚开通的AppLinking下面,点击链接前缀页签,点击添加链接前缀,根据需要创建一个现网唯一的前缀。

系统会自动帮你检测,保证你域名的全网唯一。

快速集成华为AGC-AppLinking服务-iOS平台_第3张图片

快速集成华为AGC-AppLinking服务-iOS平台_第4张图片

3、在iOS项目里面集成AppLinking SDK

1、打开命令行窗口,导航至Xcode项目所在的位置。

2、在命令行窗口执行pod init命令创建Podfile文件。

快速集成华为AGC-AppLinking服务-iOS平台_第5张图片

3、打开podfile文件,在podfile中添加AGC基础SDK依赖的pod。

pod 'AGConnectCore'
pod 'AGConnectAppLinking'

快速集成华为AGC-AppLinking服务-iOS平台_第6张图片

4、在命令行窗口执行pod install安装pod,

5、初始化AGC SDK : 在项目的AppDelegate.m文件中导入头文件

并且在在application:(UIApplication )application didFinishLaunchingWithOptions:(NSDictionary )launchOptions 的方法中添加如下代码:

#import "AppDelegate.h"
#import 
@implementation AppDelegate
- (BOOL)Application:(UIApplication *)Application didFinishLaunchingWithOptions: (NSDictionary *)launchOptions {
    // Override point for customization after Application launch.
    [AGCInstance startup];  //初始化
    return YES;
}

快速集成华为AGC-AppLinking服务-iOS平台_第7张图片

4、创建AppLinking

有两种方式创建AppLinking一种是直接在AGC界面上创建,另外一个是在Android项目里面用代码的API接口创建:

4.1创建AppLinking:

1、界面入口如下:点击创建AppLinking,然后根据步骤一步一步创建即可。

快速集成华为AGC-AppLinking服务-iOS平台_第8张图片

2、默认的深度链接配置,我就直接随意找了一个华为官网的。注意Android的深度链接的配置。

快速集成华为AGC-AppLinking服务-iOS平台_第9张图片

3、安卓链接行为,配置为:在Android应用中打开。

快速集成华为AGC-AppLinking服务-iOS平台_第10张图片

创建好以后,就可以复制下来使用了

快速集成华为AGC-AppLinking服务-iOS平台_第11张图片

4.2端侧代码创建AppLinking

1、iOS的界面布局如下,添加三个button控件用于创建和拷贝AppLinking;四个label控件,用于展示创建的链接;

快速集成华为AGC-AppLinking服务-iOS平台_第12张图片

2、先声明对应的参数:

快速集成华为AGC-AppLinking服务-iOS平台_第13张图片

3、创建链接:
我这里iOS的深度链接设置为:agckit://android/detail
Android的深度链接设置为:agckit://android/detail

快速集成华为AGC-AppLinking服务-iOS平台_第14张图片

4、拷贝对应的长链接和短连接

快速集成华为AGC-AppLinking服务-iOS平台_第15张图片

5、拷贝链接的方法如下

快速集成华为AGC-AppLinking服务-iOS平台_第16张图片

快速集成华为AGC-AppLinking服务-iOS平台_第17张图片

5、接收相关AppLinking

1、生成域名的资产校验文件:需要现在AGC的项目设置界面,配置对应的团队ID(此团队ID为苹果 开发者网站-Membership – Team ID

快速集成华为AGC-AppLinking服务-iOS平台_第18张图片

2、配置完成后,AGC会为默认域名自动生成资产校验文件,资产校验文件生成后,您可前往“https://your_applinking_url_p...”查看。

快速集成华为AGC-AppLinking服务-iOS平台_第19张图片

3、配置自定义Schema:

快速集成华为AGC-AppLinking服务-iOS平台_第20张图片

4、接收链接的代码设置:打开AppDelegate.m文件,在系统启动方法中添加handleAppLinking方法来处理接收到链接事件。

快速集成华为AGC-AppLinking服务-iOS平台_第21张图片

5、 判断接收到的链接是否是App Linking链接,并返回App是否可以处理此链接。

在这里插入图片描述

对于自定义Scheme链接

在application: openURL: options:方法中先调用AGCAppLinking的sharedInstance方法获取单例对象,再调用此对象的openDeepLinkURL方法处理

在这里插入图片描述

6、打包测试,查看现象

1、验证创建链接:
点击CreatLink按钮:可以正确生成长链接和短连接

快速集成华为AGC-AppLinking服务-iOS平台_第22张图片

2、验证通过链接拉起应用

点击CopyShortLink,将链接拷贝到浏览器:通过浏览器中输入生成的AppLinking,可以拉起应用

快速集成华为AGC-AppLinking服务-iOS平台_第23张图片

7、总结

集成简单,SDK依赖体积小,可以实现跨平台的分享,Android和iOS都可以支持,不需要在不同的平台做不同的适配了,节约工作量。

运营做推广可以再AGC界面上创建,开发做分享功能可以在端侧用代码创建,简直完美。

  欲了解更多详情,请参见:

  华为AGC AppLinking服务开发文档:https://developer.huawei.com/consumer/cn/doc/development/AppGallery-connect-Guides/agc-applinking-introduction


原文链接:https://developer.huawei.com/consumer/cn/forum/topic/0201406757244400287?fid=0101271690375130218

原作者:Jessyyyyy

你可能感兴趣的:(android)