微信1.8.6.1更新支持universal link方案后不使用universal link使用白名单url sheme的方式:

https://blog.csdn.net/yimiyuangguang/article/details/72743025

1.开启http支持,添加ATS配置
info.plist中

<key>NSAppTransportSecurity</key><dict><key>NSAllowsArbitraryLoads</key><true/></dict>

2.设置白名单wechat,weixin,weixinULAPI

3.info.plist要与Target Membership的项目勾选起来

4.taghet中检查info.plistfile文件路径是否是空的
正常情况这里是 Info.plist 的文件路径,新建项目默认就有了不需要去手动填写。万一是空的,你需要填写对应的地址,格式为:项目名/Info.plist或者项目根目录/项目名/Info.plist。 例如:Anthropometry/Info.plist 或者 $(SRCROOT)/Anthropometry/Info.plist 注意:Anthropometry 是我的项目,此处需要根据各自项目做修改。正确后可以 在 General 选项卡看到配置的信息identlty

5.build settings /linking /
others links flags,增加-all_load

苹果官网介绍universal link


iOS开发 - Universal Links 通用链接
https://www.jianshu.com/p/ffdd1722f669

http://www.cocoachina.com/articles/13321

1.通用链接介绍

当你的应用支持通用链接,iOS9 之后 , 用户可以点击一个链接跳转到你的网站,并获得无缝重定向到您安装的应用程序,而无需通过 Safari 浏览器。如果你的应用不支持的话,点击链接将会用 Safari 来打开。

2.通用链接优点

  • 安全性:当用户安装应用程序,iOS会检查您已经上传到web服务器文件,以确 保您的网站允许你的应用程序能打开代表它的URL 文件,只要你创建并且上传该文件,那么你的应用和服务器之间的关联是安全的。
  • 灵活性:当你的应用程序没有被安装的时候,通用链接照样能够工作。当用户没有安装你的应用程序,点击该链接,将会以用户所期望的以Safari的形式访问。
  • 简单性:通用链接既能支持你的网站,又能支持你的应用。
    私有性:其他的应用程序能和你的应用程序通信,不管你的应用是否被安装。
  • 独特性:与自定义的URL链接相比,通用链接不能被其他的应用程序所访问,因为它们使用的是标准的HTTP 或 HTTPS 链接到你的网站。
  • 唯一性:和自定义URL Scheme不一样,universal link 不会被其他app使用,因为它使用标准的htts链接到自己的域名

3.通用链接适中打开方式

1.安装客户端后点击链接
(检测应用是否安装,如果安装直接打开应用)

2.长按链接选择 Safari 中打开

3.长按链接选择在 XXX 中打开

4.删除应用后点击链接
(检测应用是否安装,如果没有安装在 Safari 中 打开网址)

4.关键实现条件

  • 有一个注册的域名
  • 域名可通过 SSL 访问(应该是需要有效的证书)
  • 支持上传一个 JSON 文件到域名
  • 至少 iOS 9 beta 2 版本
  • 至少 Xcode 7 beta 2
  • 需要真机测试,模拟器不支持通用链接
  • web server 需要支持 https,客户端需要通告 https 访问,并且不支持任何重定向

5.universal link实现操作步骤

1.开启 Associated Domains 域:

进入苹果Apple Developer — Member Center - Certificates, Identifiers & Profiles – Identifiers - App IDs –Edit 然后开启打钩 Associated Domains 后保存。

2.添加Associated Domains 域:

  • 说明:你的 APP 域名, 必须用 applinks: 前置它:还添加一些你可能 拥有的子域和扩展(www.domain.com, news.domain.com 等等)。
  • 作用:配置之后你的 APP 会自动从你的域名请求一个特殊的 JSON 文 件 apple-app-site-association。当你第一次启动 APP,它会从 https://domain.com/apple-app-site-association 下载这个文件。

3.上传 apple-app-site-association到服务器的根目录:

注意事项:

  • paths路径大小写敏感
  • paths内容可明确哪些通用链接需要被处理,哪些不需要
  • Not使用:为了明确指出不被处理的链接,可增加”NOT“在链接前面,例如

    “paths”:[“wwdc/news”,“NOT /videos/wwdc/2010/*”,"/videos/wwdc/201?/"]

  • 你可以使用*明确所有的网页
  • 也可以使用一个明确的URL 例/wwdc/news/
  • 也可以追加*到你的URL,*和?来搭配使用。
  • "appID"组成部分:TeamID +Bundle TeamID
  • Bundle一定要和APP的Bundleld一致
  • apple-app-site-associate文件不能带后缀
  • apple-app-site-associate文件需要上传到网站根目录
  • 每一个代表着应用的字典,必须包含一个AppID和paths,appID是TeamID和BundleID,paths是一个字符串数组,明确着你的应用支持的通用链接和你的应用程序不支持的通用链接内容
  • 内容如下
{"applinks":{"apps":[];"details":{"TBEJCS6FFP.com.domain.App":{"paths":["*"]}}}
}

4.在app里处理通用链接:

-(BOOL) application:(UIApplication *)appliation continueUserActivity:(NSUserActivity *)userActivity restorationHandler(void (^)(NSArray * _Nullable))restorationHandler
{if([userActivity.activityType isEqualToString:NSUserActivityBrowsingWeb]){NSURL *webURL = userActivity.webpageURL;if([webURL.host isEqualToString:@"domain.com"]){//打开界面}else{//不能识别链接,就用浏览器打开[[UIApplication shareApplication] openURL:webUrl];}}return YES;
}

6 简易版实现universal link

1.在app中添加Associate Domain Entitlementapplinks:applinks:example.com
通用链接:通过可信的域名打开app2.创建apple-app-site-association文件并上传到服务器中,(无后缀的json文件){"applinks":{"apps":[],"details":[{"appID":.com.test.bundle,"paths":["*"]}]}
}3.在Appdelegate中进行处理-(BOOL) application:(UIApplication *)appliation continueUserActivity:(NSUserActivity *)userActivity restorationHandler(void (^)(NSArray * _Nullable))restorationHandler
{NSURL *webURL = userActivity.webpageURL;[self handleDeeplinkUrl:webURL];return YES;
}

微信universal link相关推荐

  1. 接入微信universal link微信校验不通过

    在开发iOS应用的过程中, 难免用到微信登录和分享, 当配置不对的时候会经常提示: 由于应用universal link校验不通过,无法XXXX 那么什么是 universal link Univer ...

  2. 项目添加universal link跳转,升级微信SDK

    转载地址:https://www.jianshu.com/p/ceafb907db40 苹果对还未从UIWebView更新到WKWebView的应用做出了明确规定:新应用最晚于2020年4月份,更新的 ...

  3. 如何在微信中打开app及Schema VS Universal Link

    如何在微信中打开app 方法一:微下载链接 微下载能力不仅能够帮助开发者在微信等场景进行一键下载安装,目前已支持直接拉起应用的指定内容页,帮助开发者缩短内容触达路径,提升产品活跃和用户体验 实际的情况 ...

  4. 苹果备忘录分享不了微信提示无法连接服务器,微信分享提示universal link 校验不通过...

    我的是一个老项目 需要升级友盟分享的sdk(实际上也是微信和qq的sdk); 这边后台给我的配置apple-app-site-association文件的链接, 格式是(www.baidu.com:8 ...

  5. iOS微信授权登录中Universal Link(通用链接)的配置 ,解决ios13,ios14微信支付不走回调问题

    这里写自定义目录标题 简介 Unuversal Links介绍 配置Unuversal Links 1.苹果开发者账号打开配置 2.XCode工程配置 3.配置JSON文件 4.后台服务器配置 5.微 ...

  6. 微信分享universal link校验不通过

    微信支付能用,微信分享和三方登录不行,提示universal link校验不通过,以为是universal link配置错了,或者项目哪里缺少配置,结果问题想复杂了,是微信开发者ID(AppID)的问 ...

  7. 微信分享显示“未验证应用”问题(辅助标签:Universal Link)

    文章目录 一.前言 二.Universal Link原理 三.Universal Link的应用 四.Universal Link的缺陷 五.关于微信使用Universal Link 六.如何添加Un ...

  8. 1分钟解决universal link微信校验不通过

    在开发iOS小程序或者微信分享时候,经常提示:由于应用universal link校验不通过,无法 按网上的方法,检查各种配置,都未能解决,选择排出以下几个情况 1.bundle Id中的teamId ...

  9. 关于iOS 解决微信SDK1.8.6 使用时“universal link校验不通过”问题

    1.前言 最近对App 第三方库进行检查更新的时候,发现微信使用universal link 进行登录.分享等操作.然后一直遇到"universal link 校验不通过"的问题, ...

最新文章

  1. WindowsServer2012史记7-茴香豆的五种写法和四种”显示计算机”的方法
  2. Drools学习 入门实例
  3. mysql 表字段信息从一张表迁移到另一张表_MySQL(数据库)笔记
  4. CodeForces - 888C K-Dominant Character 思维
  5. iframe src 传参数_剧本杀测评|本友投稿——蜀山传(非剧透)
  6. chrome控制台使用jquery
  7. BIM族库下载——Revit灯具族库
  8. Terrasolid安装与破解
  9. POJ 3764 DFS+trie树
  10. 茶叶文化网站设计与实现 HTML+CSS学生网页设计作业源码
  11. html5 侧滑菜单,侧滑菜单
  12. Go 语言编程 — 高级数据类型 — Interface、多态、Duck Typing 与泛式编程
  13. JavaWeb全面知识总结之呕血三天精心整理
  14. VM虚拟机Ubuntu系统鼠标闪烁通用解决办法
  15. 图谱实战 | 百度基于异构互联知识图谱的多模内容创作技术
  16. uniapp设置router
  17. 关于单点接地和多点接地的问题
  18. ADN中国团队参加微软的Kinect全国大赛获三等奖,我们团队的创意项目用Kinect在Naviswork中虚拟漫游
  19. 渗透测试-----9-拒绝服务(黑客其它的攻击方式)
  20. 小米电视/小米盒子没有u盘怎么安装第三方软件

热门文章

  1. lombok 基础注解之 @Builder
  2. Ajax请求的五个步骤
  3. 2018年7月16日训练日记
  4. Process Explorer v16.32 Windows下查看进程详细信息
  5. 教资笔记整理综合素质(1)——职业理念(教育观、学生观、教师观)
  6. 推动开源与商业共生共赢 | 2023开放原子全球开源峰会开源商业化创新发展分论坛即将启幕
  7. 【Git】git代码统计分析工具-gitstats
  8. Codeforces 1327 B. Princesses and Princes
  9. C# log4net 日志输出超详细
  10. dom4j中文API