iOS Universal Links 配置

2024-06-09 15:20
文章标签 配置 ios universal links

本文主要是介绍iOS Universal Links 配置,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

前言

Universal Links 通用链接,我的理解就是通过点击这个链接,能够打开应用,还可以根据配置的路径和参数跳转到App内指定页面和传递参数。我们做微信QQ登录分享时会要求配置这个链接。网上有很多文章介绍了如何配置,但是每次随便搜一篇来照着操作,总是会遇到问题,算了还是自己花点时间记录一下吧!

这里记录一下参考的文档,大家也可以直接移步过去,记录的原因主要是万一以后我文章的步骤过时啦,就可以去这几个官方的地方瞅瞅!

Apple developer:https://developer.apple.com/documentation
微信文档:https://developers.weixin.qq.com/doc
Flutter文档:https://docs.flutter.dev/cookbook/navigation
支付宝文档:https://opendocs.alipay.com

工具:Xcode 15.2
域名:假设我们的域名是 example.com

配置Universal Links 分为四个步骤

  1. Xcode 配置 Associated Domains
  2. 创建 apple-app-site-association 文件并放在指定域名目录下
  3. Appdelegate 处理回调
  4. 验证 Universal Links 是否配置成功

1. Xcode 配置 Associated Domains

  1. 点击项目 target
  2. 点击 Signing & Capabilities
  3. 点击 + Capability
  4. 选择 Associated Domains
    在这里插入图片描述
  5. 在 Associated Domains 里 点击 +
  6. 输入applinks:example.com 将 example.com 替换成你自己的域名
    在这里插入图片描述

2. apple-app-site-association 文件

2.1 制作apple-app-site-association

要求

  1. 文件内容要使用json格式
  2. 保存时不要包含.json 以及其它任何的扩展名
  3. 文件命名必须是apple-app-site-association

示例:

{
"applinks":{"apps":[],"details":[{"appID":"NR984AR84W.com.example.deeplink","paths":["/example/*"]}]}
}

apple-app-site-association 文件已上传请到绑定资源查看

参数说明:

  • appID组成:<team id>.<bundle id>
    team id 获取:登录开发者账号找到团队id,就是team id在这里插入图片描述bundle id 获取:用Xcode 打开项目查看
    在这里插入图片描述
  • paths:我们一般会配置通配符,为了适配微信、支付宝的跳转要求
    这是微信接入文档截图
    在这里插入图片描述

2.2 上传 apple-app-site-association文件

  1. Universal Links 必须支持https
  2. 将文件放到域名下的.well-known子目录中:完整路径如下
https://域名/.well-known/apple-app-site-association
  1. 验证文件路径:将路径在浏览器中打开,可以看到内容或者能够下载文件都可以

3. Appdelegate 实现回调

application(_ application: UIApplication, continue userActivity: NSUserActivity, restorationHandler: @escaping ([UIUserActivityRestoring]?) -> Void) -> Bool{Return  trun
}

4. 验证 Universal Links 是否配置成功

  1. 打开备忘录App
  2. 添加Universal Links 到备忘录
Universal Links: 
https//example.com/example/
  1. 点击URL,如果配置成功,就会打开app

结语

本文分享的只是纯粹的iOS Universal Links 配置步骤,功能仅仅是点击Universal Links打开app。当你要接入微信和支付宝的功能时,还会有其它的一些配置,请按照对应的官方文档进行配置就可以了。


感谢您的阅读和参与,HH思无邪愿与您一起在技术的道路上不断探索。如果您喜欢这篇文章,不妨留下您宝贵的赞!如果您对文章有任何疑问或建议,欢迎在评论区留言,我会第一时间处理,您的支持是我前行的动力,愿我们都能成为更好的自己!

这篇关于iOS Universal Links 配置的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1045550

相关文章

MyBatis的配置对象Configuration作用及说明

《MyBatis的配置对象Configuration作用及说明》MyBatis的Configuration对象是MyBatis的核心配置对象,它包含了MyBatis运行时所需的几乎所有配置信息,这个对... 目录MyBATis配置对象Configuration作用Configuration 对象的主要作用C

IDEA与JDK、Maven安装配置完整步骤解析

《IDEA与JDK、Maven安装配置完整步骤解析》:本文主要介绍如何安装和配置IDE(IntelliJIDEA),包括IDE的安装步骤、JDK的下载与配置、Maven的安装与配置,以及如何在I... 目录1. IDE安装步骤2.配置操作步骤3. JDK配置下载JDK配置JDK环境变量4. Maven配置下

Springboot的自动配置是什么及注意事项

《Springboot的自动配置是什么及注意事项》SpringBoot的自动配置(Auto-configuration)是指框架根据项目的依赖和应用程序的环境自动配置Spring应用上下文中的Bean... 目录核心概念:自动配置的关键特点:自动配置工作原理:示例:需要注意的点1.默认配置可能不适合所有场景

Nginx配置系统服务&设置环境变量方式

《Nginx配置系统服务&设置环境变量方式》本文介绍了如何将Nginx配置为系统服务并设置环境变量,以便更方便地对Nginx进行操作,通过配置系统服务,可以使用系统命令来启动、停止或重新加载Nginx... 目录1.Nginx操作问题2.配置系统服android务3.设置环境变量总结1.Nginx操作问题

Keepalived+Nginx双机配置小结

《Keepalived+Nginx双机配置小结》本文主要介绍了Keepalived+Nginx双机配置小结,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面... 目录1.1 软硬件要求1.2 部署前服务器配置调优1.3 Nginx+Keepalived部署1.3

Apache伪静态(Rewrite).htaccess文件详解与配置技巧

《Apache伪静态(Rewrite).htaccess文件详解与配置技巧》Apache伪静态(Rewrite).htaccess是一个纯文本文件,它里面存放着Apache服务器配置相关的指令,主要的... 一、.htAccess的基本作用.htaccess是一个纯文本文件,它里面存放着Apache服务器

nginx配置多域名共用服务器80端口

《nginx配置多域名共用服务器80端口》本文主要介绍了配置Nginx.conf文件,使得同一台服务器上的服务程序能够根据域名分发到相应的端口进行处理,从而实现用户通过abc.com或xyz.com直... 多个域名,比如两个域名,这两个域名其实共用一台服务器(意味着域名解析到同一个IP),一个域名为abc

nginx生成自签名SSL证书配置HTTPS的实现

《nginx生成自签名SSL证书配置HTTPS的实现》本文主要介绍在Nginx中生成自签名SSL证书并配置HTTPS,包括安装Nginx、创建证书、配置证书以及测试访问,具有一定的参考价值,感兴趣的可... 目录一、安装nginx二、创建证书三、配置证书并验证四、测试一、安装nginxnginx必须有"-

springboot rocketmq配置生产者和消息者的步骤

《springbootrocketmq配置生产者和消息者的步骤》本文介绍了如何在SpringBoot中集成RocketMQ,包括添加依赖、配置application.yml、创建生产者和消费者,并展... 目录1. 添加依赖2. 配置application.yml3. 创建生产者4. 创建消费者5. 使用在

SpringBoot使用Jasypt对YML文件配置内容加密的方法(数据库密码加密)

《SpringBoot使用Jasypt对YML文件配置内容加密的方法(数据库密码加密)》本文介绍了如何在SpringBoot项目中使用Jasypt对application.yml文件中的敏感信息(如数... 目录SpringBoot使用Jasypt对YML文件配置内容进行加密(例:数据库密码加密)前言一、J