iOSer 必知必会的深度链接技术——WWDC2019更新

 时间:2024-10-11 18:38:42

iOSer作为移动开发者中的一员,不得不说深度链接在当下这个“流量”时代已经成为我们的必修课了,那么什么是深度链接呢?简单的说就是,可以通过一个简单的“链接”,打开App并直接进入该App中的内容页。前提是该手机上已安装该App,且该App需要支持深度链接。例如:在Safari里看到的澎湃新闻App的某一篇新闻 “中国又一新的世界遗产...” 点击下面滚动Banner上的“打开App”按钮便可直接进入澎湃新闻App(已安装)中对应的新闻页面:可见在移动端采用深度链接技术,极大的省去了用户打开App、再搜索内容或者点击某处进入指定页面等繁琐的操作,直接点击网页上的打开按钮即可一键到达App内的指定页面。

iOSer 必知必会的深度链接技术——WWDC2019更新

二、深度链接解决的问题

1、Universal Links(通用连接)一种能够通过点击传统 HTTPS链接来 启动App或者 打开对应网站的技术。通过唯一的网址, 不需要特别的URI Scheme就可以链接一个特定App里面的视图 。比如:一个App分享内容到微信,用户在微信内置浏览器中看到H5页面内容,然后用户点击触发Universal Links链接后,即可直接打开App内相同的页面内容。(PS: 由于微信 6.5 版本之后做了 屏蔽操作,导致无法直接打开App了,但这并不影响系统引导。)NOTEUniversal links let users open your app when they tap links to your website within WKWebViewand UIWebViewviews and Safari pages, in addition to links that result in a call to openURL:, such as those that occur in Mail, Messages, and other apps.When a user is browsing your website in Safari and they tap a universal link to a URL in the same domain as the current webpage, iOS respects the user’s most likely intent and opens the link in Safari. If the user taps a universal link to a URL in a different domain, iOS opens the link in your app.For users who are running versions of iOS earlier than 9.0, tapping a universal link to your website opens the link in Safari.

2、首先,这是一种标准的HTTPS链接,为什么要强调这一点呢?因为它解决了一个很核心的问题,即使你的设备上没有安装App,那么点击该链接也不会出现上面“Safari无法打开该网页,因为网址无效”的报错,它可以当作普通网页正常被访问,为用户体验层面的提升提供了更多的可能。

3、其次,通过 Universal Links 跳转到自己App从而进行通讯的方式不需要两个App之间的兼并开发,别人的App里不需要为打开自己的App做任何配置,只需要自己开发配置好自己的App和网页即可,不管自己的网页是在哪一个App里被打开,网页和App之间实现的 Universal Links 都一直有效。

4、最后,使用这种方式还有几个细节优势点,比如省去了URL Scheme跳转App前的系统确认提示框,相比之下更直接,另外,App未安装时点击之后直接访问网页,一方面解决了URL Scheme在浏览器层面不可知的成功或者失败,同时还能够呈现给用户网页内容,引导用户下载或是进行网页操作,不管从哪一层面来说,这都是一种完胜URL Scheme的方式。

三、如何实现iOS上的深度链接

1、添加 Universal Links 的支持很简单。你只酋篚靶高需要三步即可实现:·创建一个 apple-app-site-association文件,文件内容是关于你的App能够处理的URLs的JSON数据·上传上面创建好的这个 apple-app-site-association文件到你的支持HTTPS的Web服务器。你可以将这个文件放到你服务器的根目录下或者 .well-known的子文件夹里·在你的App里配置、处理 Universal Links创建和上传 Association 文件为了在你的网站和App之间创建一个安全的连接,你建立了它们之间的信任关系。这个信任关系的建立分两步:·一个是你添加到你的网站的 apple-app-site-association文件·另一个是你添加到你的App的 com.apple.developer.associated-domains权限(这一部分在下面的 准备处理 Universal Links 的App中介绍)在您的apple-app-site-association文件中,您可以指定网站中应作为通用链接处理的路径以及不应作为通用链接处理的路径。保持路径列表相当短,并通过正则通配符的方式来匹配更多的路径集。如下是一个 apple-app-site-association文件的示例,该文件标识了应作为通用链接处理的三个路径。

iOSer 必知必会的深度链接技术——WWDC2019更新iOSer 必知必会的深度链接技术——WWDC2019更新iOSer 必知必会的深度链接技术——WWDC2019更新

6、macOS 下的 Universal Links 工作机制与 iOS 下存在一定的差异·默认打开网页,会提示用户是否需要打开app·远程登录下无法生效·Appstore 签名 macApp 可以在下载 App 后立刻生效·开发者签名的 macApp 必须在用户运行过一次后生效在 mac app 中打开一个 Universal Link

iOSer 必知必会的深度链接技术——WWDC2019更新
  • Mstching对对打印机评测试用
  • EFS服务如何启用并便于访问加密文件
  • 迷你军团如何添加士兵
  • WiFi码是什么,要如何生成?
  • 百度极速版软件APP如何查看隐私政策
  • 热门搜索
    海南建设国际旅游岛 清明旅游好去处 我要去山西旅游 花莲旅游 两天一夜旅游景点 成都旅游攻略2013 美国旅游签证办理 河南宝泉旅游度假区 宁波旅游图 三亚旅游费用