美文网首页
iOS universallinks唤醒app

iOS universallinks唤醒app

作者: SuyChen | 来源:发表于2020-12-03 09:51 被阅读0次

从iOS9之后,苹果就推出了这个功能,用来唤醒外部app。这个功能在那些电商app上使用尤其广泛,当你打开对应的h5网页后,上面跳出一个是否跳转app的按钮。

现在iOS11已经基本覆盖,iOS12也马上就要发布了,这算是一个很成熟的服务了,所以对接一下,也十分必要。

在这个功能推出之前,iOS这边基本都用url scheme做app间的通信,这个功能在企鹅系应用中直接被屏蔽,在其他应用中使用的也不少。但是,这个会产生很多问题,应为url scheme不唯一,用户可以随便自定义这个url scheme。之前单位做应用的时候变碰到过这个问题,装了另外一个app之后,用urlscheme唤醒我的app的时候,唤醒了别的app,这个便是由于url scheme冲突造成的问题。unviersal links 由于域名的唯一性,便不会产生这个问题。

下面我们来说一下具体对接过程

1.在xcode中开启Associated Domians服务

路径:Target->Capbilities->Associated Domians

之前看有人说,需要先在开发者账号中开启这个服务,实际上你只要在工程中打开这个服务,然后build一下,开发者那边自动会开启这个服务。

image

在domains里面添加你需要的链接。

a.必须以applinks作为开头

b.该链接的服务器必须支持ssl

2.填写apple-app-site-association文件

这是一个json格式的文件,但是文件名不能有后缀

image

在这个文件里 可以配置多个appID,appID的格式为你该工程所在的team的teamID+你的工程ID-->>T1212JGF.com.xxx.xxx

具体的可以在开发者账号的Account -> Membership -> Team ID 查看

paths里面可以配置所有你需要响应的链接。

比如你在applinks里配置了www.baidu.com,你现在需要打开www.baidu.com就能唤醒app,那你可以直接写''/*".

你需要在某几个特定的链接下唤醒app,那就在paths里面填写你那特定的链接。paths里面可以填写多个链接

3. 把apple-app-site-association文件传到applinks的根目录下。

比如你applinks为www.baidu.com。那就将后台把这个文件传到这个目录下。当你访问www.baidu.com/apple-app-site-association这个链接的时候,能成功的下载这个文件,那就说明成功了。

4.工程中配置

在工程APPdelegate中添加对于该服务的响应代码,这里可以对该链接是否跳转进行控制。

复制代码

<pre style="margin: 0px; padding: 0px; overflow: auto; word-wrap: break-word; font-family: "Courier New" !important; font-size: 12px !important;">- (BOOL)application:(UIApplication *)application continueUserActivity:(nonnull NSUserActivity *)userActivity restorationHandler:(nonnull void (^)(NSArray * _Nullable))restorationHandler{ if([userActivity.activityType isEqualToString:NSUserActivityTypeBrowsingWeb]){
NSURL *url = userActivity.webpageURL;
} return YES;
}</pre>

复制代码

5. 测试

在safari中打开对应的链接

image

当你打开链接,然后下拉,出现该多出的页面,那么恭喜你,你成功了。点击打开按钮,你就能跳转到你需要的页面了。

原作者:https://www.cnblogs.com/muzhou/p/9223690.html

相关文章

  • iOS universallinks唤醒app

    从iOS9之后,苹果就推出了这个功能,用来唤醒外部app。这个功能在那些电商app上使用尤其广泛,当你打开对应的h...

  • iOS APP 支持universalLinks

    针对最近QQ和微信SDK升级需要,我们项目也增加universalLinks 支持。 https://wiki.c...

  • iOS App间相互跳转漫谈 - part1

    概述 文章介绍当下iOS系统中各种App之间的跳转技术,并最终重点介绍UniversalLinks的一种特殊的使用...

  • iOS 通用链接(UniversalLinks)+ 分享功能的一

    iOS 通用链接(UniversalLinks)+ 分享功能的一些看法 iOS 通用链接(UniversalLin...

  • 在webview中唤醒APP或者引导用户下载

    在webview中唤醒APP或者引导用户下载 唤醒APP 下载APP,IOS系统跳App Store,安卓系统可以...

  • App唤醒

    App唤醒 H5页面唤醒App,兼容iOS和安卓的方式是location.href

  • iOS唤醒app

    今天工作需要,要实现微信、QQ等扫描二维码,唤醒app,跳到指定页面的功能。我去,一想没有做过呀!好吧!今天有时间...

  • Support Universal Links

    iOS Universal Links(通用链接)官网文档UniversalLinks文档中怎么在网页中打开你的a...

  • iOS APP-A 唤醒其它 APP-B

    实现逻辑 iOS支持通过Scheme唤醒APP。 操作步骤 被唤醒的APP端的设置:即B端 在需要被打开的app的...

  • iOS deepLink 唤醒app

    需求 用手机打开我们的网页,点击打开按钮或者收藏按钮,可以直接唤醒app,如果未安装app,则跳转到应用商店提示下...

网友评论

      本文标题:iOS universallinks唤醒app

      本文链接:https://www.haomeiwen.com/subject/qftmwktx.html