ios-好好利用safari之通用链接universallink

author author     2023-03-17     549

关键词:

参考技术A Universal Link 是 Apple 在 iOS9 推出的一种能够方便的通过传统 HTTPS 链接来启动 APP 的功能,可以使用相同的网址打开网址和 APP 。当你的应用支持 Universal Link ,当用户点击一个链接是可以跳转到你的网站并获得无缝重定向到对应的APP,且不需要通过 Safari 浏览器。如果你的应用不支持的话,则会在 Safari 中打开该链接。在苹果开发者中可以看到对它的介绍是:

Universal Link :看起来就是一条普通的 https 链接,当然是我们在该链接域名根目录配置过的一个链接,也可以在该链接中放置对应的 H5 页面。当用户的点击该链接,只要手机中安装了支持该链接的 APP 就会直接进入到 APP 中。如果没有安装 APP 则会跳转到 Safari 浏览器中,展示 H5 页面。对用户来说则是一个无缝跳转的过程。

使用 Universal Link 可以让用户在 Safari 浏览器或者其他 APP 的 webview 中拉起相应的 APP ,也可以在 APP 中使用相应的功能,从而来把用户引流到 APP 中。比如淘宝当在 Safari 浏览器中进入淘宝网页点击打开 APP 则会使用 Universal Link 来拉起淘宝 APP。

在 iOS 设备中的备忘录中输入 APP 能识别的链接,然后直接点击此链接,就会直接跳转到你的 app 了。或是长按,在弹出的菜单中出现在 “XXX”中打开 ,这也代表着成功。

或是你将要测试的网址在 Safari 中打开,在出现的网页上方下滑,可以看到有在 “XX”应用中打开

当点击某个链接,直接可以进我们的 app 了,但是我们的目的是要能够获取到用户进来的链接,根据链接来展示给用户相应的内容。

我们需要在工程里的实现 AppDelegate 里对应的方法:

苹果为了方便开发者,提供了 一个网页来验证 我们编写的这个 apple-app-site-association 是否合法有效,进入验证网址进行验证:

前端开发经常面临跨域问题,必须要求跨域,如果不跨域,就不行。
只有当前 webview 的 URL 域名,与跳转目标 URL 域名不一致时, Universal Link 才生效。

苹果官方文档

苹果验证通用链接是否可用的网站

Universal Link 文件存放的 server 需要支持 HTTPS 苹果支持的 HTTPS 证书列表

当另一个应用程序打开 Safari 视图控制器时,如何让 branch.io 通用链接工作?

】当另一个应用程序打开Safari视图控制器时,如何让branch.io通用链接工作?【英文标题】:Howtogetbranch.iouniversallinksworkingwhenanotherappopensaSafariViewController?【发布时间】:2016-02-2618:14:32【问题描述】:当我通过第三方应用打开分支... 查看详情

如何将通用链接重定向到应用商店而不在 Safari 浏览器上显示弹出窗口?

】如何将通用链接重定向到应用商店而不在Safari浏览器上显示弹出窗口?【英文标题】:HowtoredirectUniversallinktoappstorewithoutshowingpopuponSafaribrowser?【发布时间】:2019-08-0106:25:12【问题描述】:我在iOS应用程序中使用通用链接。对于... 查看详情

通用链接不适用于反应原生 IOS

...作。当我尝试打开httpsurlex:https:example.com时,它打开的是safari,它没 查看详情

iOS 11.2 中的通用链接中断

...应用程序并重新安装了它。3)从那时起,所有链接始终在Safari中打开Branchdeepview。4)点击“打开 查看详情

在 JavaScript 中检测苹果的强制幻象横幅

...2018-03-0101:09:38【问题描述】:我不是iOS开发者,对苹果的Safari配置知之甚少。但是请听我说完。我已配置通用链接,并且我了解如果安装了应用程序,使用Safari浏览器访问该网站会自动显示一个幻像横幅以在应用程序中打开页面... 查看详情

无法通过 gmail 应用程序或邮件应用程序从通用链接打开应用程序。它只能在 safari 应用程序中工作

...程序或邮件应用程序从通用链接打开应用程序。它只能在safari应用程序中工作【英文标题】:Unabletoopentheappfromuniversallinkthroughgmailappormailapp.Itisworkingfromsafariapponly【发布时间】:2018-01-3112:49:10【问题描述】:我需要帮助来解决问... 查看详情

ios通用链接(universallink)配置详细流程

...接的APP就会直接进入到APP中。如果没有安装APP则会跳转到Safari浏览器中,展示H5页面。如果一个域名下面有多端APP,可写作苹果提供了一个网页来验证我们编写的这个apple-app-site-association文件是否合法有效,https://search.developer.apple.... 查看详情

Firebase 动态链接在 iOS 14 上的 Safari 中留下空白页面

...问题描述】:我们已经配置并测试了动态深度延迟链接,利用Firebase为我们的网络到应用的过渡体验。我们有一个网站,用户可以在其中选择需要使用我们的原生iOS应用程序的操作;我们动态创建链接,然 查看详情

ios--浏览器(safari)唤起app

...的方式跳转到该app。最简单的测试方法就是在系统自带的safari浏览器中输入该URL: “myScheme://************”,只要url的前缀为该app的URLscheme,就能够唤起。*当该app被唤起时会在AppDelegate走对应的方法,这里能够通过url中除了scheme... 查看详情

ios通用链接(universallinks)配置

参考技术A在app开发中我们经常需要从浏览器,Safari中去唤醒app,iOS9之前我们通过配置scheme从而实现这种跳转,但是这种方式需要提前判断系统中是否安装了能够响应对应scheme的app,这种方式在微信中是被禁用的。UniversalLinks是iO... 查看详情

iOS 应用程序上的通用链接打开应用程序但不调用处理程序

...另一个应用程序中点击链接时,它会打开我的应用程序(Safari除外,它会打开网页,但在顶部显示一个小横幅以在应用程序中打开,点击“打开”会打开我的应用程序)。我的问题是我 查看详情

如何不以编程方式处理一些通用链接?

...1:02:04【问题描述】:我的iOS应用程序处理universallinks以将Safari用户重定向到我的应用程序。到目前为止,一切都运行良好,如果用户从Google点按指向我的网站的链接,我的应用将打开,而不是像这样打开我的网站:fromsafari 查看详情

通用 ImageLoader java.io.EOFException

】通用ImageLoaderjava.io.EOFException【英文标题】:UniversalImageLoaderjava.io.EOFException【发布时间】:2013-06-2011:58:50【问题描述】:我正在尝试获取JSON数据并使用ArrayAdapter在我的ListView中显示它。无论如何,在我的适配器中,我正在使用... 查看详情

网页的通用标签以及表格标签

...sp;    今天学习了通用标签及其属性,以及利用表格标签去做简单的网页。其中利用表格做网页时,通过设计视图,不仅可以直观的布局整个网页的样式,结合代码视图,可以更高效的完成对网页的设计。今天下午... 查看详情

强制 iOS 应用在 Safari 中打开外部链接

】强制iOS应用在Safari中打开外部链接【英文标题】:ForceiOSappopensexternallinksinsafari【发布时间】:2013-02-2815:00:41【问题描述】:我有一个使用PhoneGap和JQuerymobile制作的iOS应用程序。该应用程序有一些我想在移动Safari中打开的外部链... 查看详情

完全防止 iOS Web 应用在移动 Safari 中打开链接,即使链接包含参数

】完全防止iOSWeb应用在移动Safari中打开链接,即使链接包含参数【英文标题】:CompletelypreventiOSwebappfromopeninglinkinmobileSafari,evenwithlinkscontainingparameters【发布时间】:2014-12-1716:14:56【问题描述】:我找到了多种解决方案来阻止iOS网... 查看详情

vue的爬坑之路之----ios:safari不兼容javascript中的date问题

  在IOS5以上版本(不包含IOS5)中的Safari浏览器能正确解释出Javascript中的newDate(‘2013-10-21‘)的日期对象。   但是在IOS5版本里面的Safari解释newDate(‘2013-10-21‘)就不正确,在IOS5的Safari中返回的永远是"InvalidDate"。&... 查看详情

iOS 9 Web 应用程序阻止在移动 Safari 中打开链接

】iOS9Web应用程序阻止在移动Safari中打开链接【英文标题】:iOS9webapppreventlinkstoopeninmobilesafari【发布时间】:2016-03-3006:22:45【问题描述】:我知道这是一个已知问题,但从iOS9开始,似乎无法再在Web应用程序中打开链接。因此,我... 查看详情