IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 移动开发 -> 如何实现在AGC控制台创建App Linking并在iOS端打开 -> 正文阅读

[移动开发]如何实现在AGC控制台创建App Linking并在iOS端打开

?简介

App Linking是一种支持Android、iOS、HarmonyOS、Web等多种平台的跳转链接,链接的目标内容可以是您想要推广的产品优惠活动,也可以是用户之间可以互相分享的应用原生内容。您可以在创建App Linking后将链接地址直接发送给用户,或者由用户在应用中动态生成App Linking并分享给其他用户,接收到App Linking的用户点击链接后即可跳转到指定页面。

开通服务和集成SDK

1、在AppGallery Connect,点击“我的项目”,在项目的应用列表中选择需要开通App Linking的应用。

2、在导航选择“增长 > App Linking”。如果是首次使用App Linking服务,请点击“立即使用”开通服务。

cke_198253.png

3、填写您所使用证书对应的App Store ID和团队ID,完成后点击后面的“?”。

cke_211967.png

4、选择常规页签下的“应用”区域,下载agconnect-services.plist配置文件。

cke_221713.png

5、打开命令行窗口,导航至Xcode项目所在的位置,创建Podfile文件。如果已经存在,可跳过本步骤。

cd project-directory

pod init

6、编辑Podfile文件,增加pod依赖pod 'AGConnectAppLinking'。

target 'AGC-AppLinking-1' do 
   pod 'AGConnectAppLinking' 
end

7、执行 pod install,然后打开xcworkspace文件查看该项目。

安装成功效果如下图。

cke_252461.png

界面设计

您可以在您的iOS工程中创建一个布局页面,参照下图进行UI设计,能够接收App Linking并且展示接收结果即可。

cke_264750.png

申请链接前缀

1、在导航选择"增长 > App Linking",选择"链接前缀"页签,点击"添加链接前缀"。

cke_274043.png

2、在“设置域名”中输入您所使用的网址前缀。

cke_283393.png

3、完成输入后点击“下一步”,系统将自动验证该链接前缀是否可用。

cke_293868.png

在AGC控制台创建App Linking

1、在创建App Linking之前,需将您要用到的深度链接,添加进网址允许清单。在App Linking页面,选择“网址允许清单”页签,点击“添加允许清单规则”。

cke_303837.png

2、您可以依次加入您所用到的重定向链接规则,完成后如下图所示。

cke_313339.png

3、App Linking页面下,选择“App Linking”页签,点击“创建App Linking”。

cke_326034.png

4、在“设置短链接”步骤,直接使用系统推荐的参数即可,点击“下一步”。

cke_335633.png

5、在“设置深度链接”步骤,设置深度链接相关参数,其中:

?链接名称:按需配置即可,一般配置为该链接的使用场景,此处配置为:AppLinking-easy

?深度链接地址(默认):一般配置为PC打开场景下可访问的H5地址。此处配置为:https://developer.huawei.com/consumer/cn。

?iOS深度链接地址:iOS设备点击该链接,重定向获取到的地址。此处配置为:AppLinking://iOS/testid=123。其他参数暂时不填,直接点击“下一步”。

cke_348520.png

6、在“设置链接行为”步骤中,“设置iOS链接行为”选择“在iOS应用中打开”和您的软件包 ID。“未安装应用时,则重定向到”选择“App Store详情页”。

cke_359283.png

7、其他可选参数您不填,点击右上角的“发布”,发布该App Linking链接。

在应用中接收App Linking

1、通过自定义Scheme的方式打开App Linking,需要您在Xcode上打开“TAGRGETS > Info > URL Types”,添加URL Schemes配置。您中,URL Shchemes设置为AppLinking。

cke_370129.png

2、在应用的AppDelegate类中引入AGConnectCore和AGConnectAppLinking库,并在didFinishLaunchingWithOptions方法里调用AGCInstance.startUp进行初始化。

import AGConnectCore 
import AGConnectAppLinking 

func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool { 
   AGCInstance.startUp() 
}

3、调用AGCAppLinking.instance().handle方法,在回调中处理接收到的App Linking链接事件。

func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool { 
   let vc = ViewController() 
   let nav = UINavigationController(rootViewController: vc) 
   self.window?.rootViewController = nav 
 
   AGCInstance.startUp() 
   AGCAppLinking.instance().handle { (link, error) in 
      let deepLink = link?.deepLink 
      vc.getDeepLink(deeplink: deepLink) 
   } 
   self.window?.makeKeyAndVisible() 
   return true 
}

4、实现application: openURL: options:方法,并返回AGCAppLinking.instance().openDeepLinkURL(url)的值。

AGCAppLinking.instance().openDeepLinkURL(url)的值。
func application(_ app: UIApplication, open url: URL, options: [UIApplication.OpenURLOptionsKey : Any] = [:]) -> Bool { 
   let isAppLinking = AGCAppLinking.instance().openDeepLinkURL(url) 
   return isAppLinking 
}

打包测试

1、在Xcode上点击运行按钮,在手机或模拟器上运行,以安装应用。

cke_408813.png

2、在AppGallery Connect平台上,通过复制或扫码的方式,获得App Linking的链接URL。

cke_419422.png

3、在浏览器访问该链接,弹出是否打开应用的提示,点击“Open”。

cke_426741.png

4、从浏览器跳转到您的应用后,应用获取到深度链接地址,即您在AGC云侧设置的iOS深度链接地址。

cke_437968.png

参考文档

App Linking官方文档

欲了解更多更全技术文章,欢迎访问https://developer.huawei.com/consumer/cn/forum/?ha_source=zzh

  移动开发 最新文章
Vue3装载axios和element-ui
android adb cmd
【xcode】Xcode常用快捷键与技巧
Android开发中的线程池使用
Java 和 Android 的 Base64
Android 测试文字编码格式
微信小程序支付
安卓权限记录
知乎之自动养号
【Android Jetpack】DataStore
上一篇文章      下一篇文章      查看所有文章
加:2022-07-17 16:34:46  更:2022-07-17 16:34:55 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/25 3:35:05-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码