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

2024/5/5 20:06:36

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

澎湃新闻1-1

可见在移动端采用深度链接技术,极大的省去了用户打开App、再搜索内容或者点击某处进入指定页面等繁琐的操作,直接点击网页上的打开按钮即可一键到达App内的指定页面。

一、iOS上深度链接的由来

在介绍深度链接是怎么来的之前,有一个基础概念需要和大家同步一下:

SandBox(沙盒)

SandBox(沙盒)是苹果官方规定的iOS系统强制应用程序只能够读取应用程序内部数据,不可以访问其他应用信息数据的一种机制。

  1. 在iOS系统的设备中每一个App都有自己的储存空间;

  2. App只能访问自己沙盒目录下的内容,不能访问其它存储空间的内容;

  3. 应用程序的数据请求需要经过权限检测,检测不通过则不执行;

为什么使用沙盒?

SandBox(沙盒)是安全体系中的一种机制,从而苹果公司在设计iOS系统时,考虑到应用之间的信息安全,对应用程序的访问权限设置了限制。

SandBox(沙盒)的弊端

使用沙盒机制后App之间不能相互访问进行通信,从而使得App成为一个个的信息孤岛。(弱小可怜又无助)

如何解决SandBox(沙盒)问题?

不能说苹果的初衷怎么样,但是带来的问题是显而易见的,那么其实苹果早在2010年 iOS 4 的时候就已经意识到App信息孤立的问题了,所以推出了 URL Scheme 技术,此技术使得iOS系统可以通过特定的URL方式传递参数给另外一个App。例如:iOSer://userid=123456&name=sands 。

不得不承认,这个技术确实解决了当初比较棘手的问题,但是在日新月异的今天,URL Scheme的诟病也日渐显著,比如想要实现两个App之间的跳转则需要兼并开发,再比如URL Scheme能够打开App的前提是已经安装了App,如果没有安装则一定会报错,相信下面的错误大家一定都见的不少,更重要的是现在越来越多的浏览器已经不再支持URL Scheme了,这必然让我们不得不另辟蹊径。

IMG_0080

相信苹果也是深刻的意识到了URL Scheme已经不再是长久之计了,所以苹果在2015年 iOS 9 中隆重推出了 Universal Links(通用链接) 。

二、深度链接解决的问题

Universal Links(通用连接) 一种能够通过点击传统 HTTPS链接 来 启动App 或者 打开对应网站 的技术。

通过唯一的网址, 不需要特别的URI Scheme就可以链接一个特定App里面的视图 。比如:一个App分享内容到微信,用户在微信内置浏览器中看到H5页面内容,然后用户点击触发Universal Links链接后,即可直接打开App内相同的页面内容。(PS: 由于微信 6.5 版本之后做了 屏蔽操作 ,导致无法直接打开App了,但这并不影响系统引导。)

NOTE

Universal links let users open your app when they tap links to your website within WKWebView and UIWebView views 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.

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

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

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

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

添加 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 文件的示例,该文件标识了应作为通用链接处理的三个路径。

{"applinks": {"apps": [],"details": [{"appID": "9JA89QQLNQ.com.mob.moblink","paths": [ "/moblink/news/", "/videos/moblink/2019/*"]},{"appID": "ABCD1234.com.mob.moblink","paths": [ "*" ]}]}}

注意

不要 在 apple-app-site-association 文件名后面添加 .json 后缀 。

  • apps:这个key必须存在,并且对应value必须是一个空数组

  • details:这个key对应的value是一个包含一个或多个字典的数组,其中每一个字典都对应一个网站支持的app,另外,数组中字典的顺序决定了系统查询匹配的顺序,所以你可以指定app只处理你网站的部分路径

  • appID:这个key对应的value是Team ID后面拼接上Bundle ID,这个很重要,千万不能错

  • paths:这个key对应的value是指定你的网站中哪些路径是需要(或者不需要)app处理的字符串数组。

不需要匹配的path则在对应路径前面加 NOT 即可,例如:"paths": [ "/moblink/news/", "NOT /videos/moblink/2010/*", "/videos/moblink/201?/*"]由于系统会顺序查找路径规则,一旦发现规则相匹配时则停止查找,所以你应该将优先级高的写在优先级低的后面。如果将前面的示例改为: "paths": [ "/moblink/news/", "/videos/moblink/201?/*", "NOT /videos/moblink/2010/*"]则数组中最后一条规则就没有用了,因为它一定会被前一条规则拦截掉。

在 apple-app-site-association 文件中有很多种方式来指定网站路径。你可以:

  • 用 * 来指定你的整个网页都支持

  • 包含一个特殊的URL,例如 /moblink/news 来指定部分链接支持

  • 在特殊URL后面加 * ,例如 /videos/moblink/2017/* 来指定一组链接支持

注意
paths数组中的路径字符串是大小写敏感的,一定要注意区分大小写。

创建 apple-app-site-association 文件后,将其上传到HTTPS Web服务器的根目录或 .well-known 子目录。该文件需要通过HTTPS直接访问-无需重定向-位于 https://<domain>/apple-app-site-association 或 https://<domain>/.well-known/apple-app-site-association 。接下来,你需要在你的App中处理 Universal Links。

准备处理 Universal Links 的App

Universal Links使用了两项技术:第一个是在Web浏览器和App之间启用Handoff的相同机制,第二个是共享Web凭据。关于这两项技术可以参考官方 Web Browser–to–Native App Handoff 和 Shared Web Credentials Reference 。当用户点击一个 Universal Link 时,iOS系统启动你的App,并且带了一个你可以查询到你的App是通过什么方式被启动的 NSUserActivity 对象参数到你的App里。

要在你的App里支持 Universal Links,只需要做如下两步:

  • 添加一个指定的你的App支持的域名权限

  • 更新你的 AppDelegate 当接收到 NSUserActivity 对象时作出适当的响应

在你App的 com.apple.developer.associated-domains 权限里,包含了所有你的App想要当作universal link处理的域名列表。在Xcode的项目主页中,选择 Capabilities tab页,然后打开 Associated Domains ,以 applinks: 开头添加上你的App支持的域名,例如:applinks:z.t4m.cn 、 applinks:*.ulml.mob.com

注意:这个域名权限列表最多添加20到30个。

15625698347787

配置好Associated Domains之后,就要在 AppDelegate.m 中实现 HandOff 的UIApplicationDelegate 方法以便你的App能够接收到universal link并进行适当的处理。

- (BOOL)application:(UIApplication *)application continueUserActivity:(NSUserActivity *)userActivity restorationHandler:(void (^)(NSArray<id<UIUserActivityRestoring>> * _Nullable))restorationHandler{NSLog(@"title: %@", userActivity.title);// NSUserActivityTypeBrowsingWebNSLog(@"activityType: %@", userActivity.activityType);// The webpage URL property always contains an HTTP or HTTPS URL, and you can use NSURLComponents APIs to manipulate the components of the URL.NSLog(@"webpageURL: %@", userActivity.webpageURL);// 根据webpageURL的路径、参数等作出适当的处理// <your code here ...>return YES;}

到此,iOS上深度链接的实现就完成了。整体来看,实现iOS上的深度链接涉及到前后端的操作和联调会特别多,尤其是HTTPS证书和错误处理访问到网站那一块,看似简单,但真正一步一步做起来的时候,大大小小的问题还是不少的,如果对于前后端不是特别熟悉的话可能还是需要一些时间的。这里我建议大家可以选择第三方深度链接服务,比如MobLink、魔窗、LinkedMe等等,相比之下,MobLink全球领先的移动端场景还原解决方案 以免费、服务好和功能而出名,较为推荐。

四、WWDC2019: What's New in Universal Links

时隔多年,在刚结束没有多久的 WWDC 2019 中,又再一次提到了Universal Links,虽然 整个session不长,也就不到20分钟的时间,但足以体验苹果一直在做这件事儿。

首先,划一下重点:Universal Links 之前只支持在 iOS 和 tvOS 平台上,现在全面登陆到 macOS 平台上了,无论你是用 UIKit 还是 AppKit 开发的 Mac App 都可以使用Universal Links。

这一次 WWDC2019 Universal Links 主要的变化有两点:

  • apple-app-site-association 文件支持精细化地址匹配写法

  • 全面支持macOS系统

OverView 总览

Universal Link 的基本运作机制

  • 通过在 XCode 的 App 配置中配置了相关信息以及安全域名指定

  • 通过在 Https only 的安全域名上部署一个配置 apple-app-site-association 文件

  • apple-app-site-association 文件中配置上丰富的 website 与 app 的链接信息

  • 在 website 与 app 之间建立起了安全有效的握手机制

  • 实现 website 的 url 与 app 的直接联动

  • 相对于自定义的 schemes 来说 Universal Link 能带给你更安全更流畅的体验

补充:schemes 上最令人诟病的就是 app 劫持,很多 app 会冒充注册知名大厂的 app scheme 从而拦截调常规的大厂 scheme 唤起,这一点在 Universal Link 就能很好的避免。

apple-app-site-association 文件精细化匹配

15625733635308

上图是 MobLink 这款提供深度链接功能的SDK的apple-app-site-association文件老的写法示例。

WechatIMG399

这是新的写法,支持了更多更强的配置能力。

  • apps 这个字段只有在 iOS 上有用,tvOS/macOS 这个字段可以忽略

  • details 字段结构大幅度变化

    • 可以通过 / 来配置支持的 path 格式条件

    • 可以通过 # 来配置支持的锚点条件

    • 可以通过 ? 来配置支持的字段条件

    • exclude 是排除字段,符合这个条件的 Universal Link 不生效

    • 以前是字典 appID 为 Key,现在是数组,并且支持 appIDs 这样的 key,可以一套配置适配多个 appID,大幅度减少工作量

    • 新增 components 字段,可以进一步约束 Universal Link 的生效条件

Universal Links 网络服务的配置建议

在部署网络服务,配置 apple-app-site-association 文件的时候,苹果建议还要遵循一下几点 Tips

  • 必须支持 https:

必须是正规证书,不能使用自定义证书。

  • URL 使用 ASCII 编码

因为在 URL 中会使用很多符号诸如 # ?% ,因此要使用 ASCII 编码。

  • 减少 apple-app-site-association 文件的大小

减少大小有助于在拥堵的网络条件下,更顺畅的生效 Universal Link。如果你的应用面向不通的国家,针对不同的国家有不同的配置文件,可以通过国家标记符来分别配置,从而让用户只下载最精简的 JSON 文件。

  • apple-app-site-association 文件的下载和更新策略:

当 App 安装到设备的时候,会从配置域名上下载这个JSON文件到本地,从而根据配置生效相关的功能。并且设备上下载的这个JSON文件会不定期的更新(亲测过,App 发布版本更新的时候也会准确触发JSON文件的更新)。

  • 使用 Smart Banner

网页中的 Smart Banner 与 Universal Links 一起配合使用,可以有效的引导未安装 app 的用户前往下载,已安装 app 的用户就可以顺畅的进行跳转

Universal Links 支持 macOS

在 XCode 中配置 Universal Links

WechatIMG398

开发 Universal Links的代码,支持macOS:

// Configuring Your Appfunc application(_ application: Application, continue userActivity: NSUserActivity,restorationHandler: @escaping ([ UserActivityRestoring]?) -> Void) -> Bool { guard userActivity.activityType == NSUserActivityTypeBrowsingWeb,let url = userActivity.webpageURL,let components = URLComponents(url: url, resolvingAgainstBaseURL: true) else {return false}for queryItem in components.queryItems ?? [] {…    return true}

在支持 macOS 的情况下,appDelegate 的 Universal Link 的处理也是这个 delegate,区别只是 UIApplication 变为 NSApplication。

由于这个 delegate 会由很多其他的快捷方式触发,不仅仅由 Universal Link 触发,所以通过 NSUserActivityTypeBrowsingWeb 来判断来源,剩下的就是标准的 url 处理了。

macOS 下的 Universal Links 工作机制与 iOS 下存在一定的差异

  • 默认打开网页,会提示用户是否需要打开app

  • 远程登录下无法生效

  • Appstore 签名 macApp 可以在下载 App 后立刻生效

  • 开发者签名的 macApp 必须在用户运行过一次后生效

在 mac app 中打开一个 Universal Link

// UIApplicationUIApplication.shared.open(url, options: [ .universalLinksOnly: true ]) {…}// NSWorkspacelet configuration = NSWorkspace.OpenConfiguration()configuration.requiresUniversalLinks = trueNSWorkspace.shared.open(url, configuration: configuration) {…}


查看全文
如若内容造成侵权/违法违规/事实不符,请联系编程学习网邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!

相关文章

  1. VS中实时获取SVN的版本号并写入到AssemblyInfo.cs中(C#)

    原文:VS中实时获取SVN的版本号并写入到AssemblyInfo.cs中(C#)在开发项目时,需要知道当前发布的到底是哪个版本,比较好的方式就是获取SVN的版本来作为项目的版本。项目版本一般由主版本、次版本、内部版本、修改版本四个部分组成,我们获取的SVN版本就作为修改版本即可。这里需…...

    2024/4/12 19:27:00
  2. Kafka面试题总结

    请说明什么是Apache Kafka?Apache Kafka是由Apache开发的一种发布订阅消息系统,它是一个分布式的、分区的和重复的日志服务。请说明什么是传统的消息传递方法?传统的消息传递方法包括两种:排队:在队列中,一组用户可以从服务器中读取消息,每条消息都发送给其中一个人。发…...

    2024/4/16 19:16:54
  3. Android | 超简单集成HMS ML Kit实现最大脸微笑抓拍

    前言如果大家对HMS ML Kit 人脸检测功能有所了解,相信已经动手调用我们提供的接口编写自己的APP啦。目前就有小伙伴在调用接口的过程中反馈,不太清楚HMS ML Kit 文档中的MLMaxSizeFaceTransactor这个接口的使用方法。为了让大家更加深刻的了解我们的接口,方便在场景中使用,…...

    2024/4/27 1:27:50
  4. AssemblyInfo.cs文件的作用。

    AssemblyInfo.cs主要用来设定生成的有关程序集的常规信息dll文件的一些参数请看以下具体说明://备注: [assembly:AssemblyDescription("用最强的抢劫类写成!")]//产品名称[assembly:AssemblyProduct("无为搜索")]//公司[assembly:AssemblyCompany("…...

    2024/4/12 19:27:25
  5. 解放双手的革命——智慧语音

    &emsp;&emsp;等了好久终于等到今天,盼了好久二哈又与大家会面。今天我们以声汇友,揭开华为快服务智慧平台又一个流量入口——智慧语音的“神秘面纱”。 &emsp;&emsp;随着智慧化能力深入人们的生活,与语音设备的互动也成为智慧生活的一种表现,通过AI音箱、智…...

    2024/5/5 19:10:08
  6. 苹果签名老是掉?苹果签名掉了怎么办?

    现在企业上架应用变得越来越难,因为苹果审核机制和政策原因,很多企业应用掉签名越来越频繁。所以苹果企业开发证书签名自己发布在公司的网站或者第三方渠道是一个很好的选择,这样可以解决企业应用上线推广、获取用户,用最小的成本获取用户,通过快速的推广可以检验产品是不…...

    2024/4/12 19:27:35
  7. 面试试题(C++方向)

    1、C和C++的特点与区别?答:(1)C语言特点: 1.作为一种面向过程的结构化语言,易于调试和维护; 2.表现能力和处理能力极强,可以直接访问内存的物理地址; 3.C语言实现了对硬件的编程操作,也适合于应用软件的开发; 4.C语言还具有效率高,可移植性强等特点。(2)C++语言特…...

    2024/4/12 19:27:00
  8. 2019-11-29-解决从旧格式的-csproj-迁移到新格式的-csproj-格式-AssemblyInfo-文件值重复问题...

    titleauthordateCreateTimecategories解决从旧格式的 csproj 迁移到新格式的 csproj 格式 AssemblyInfo 文件值重复问题lindexi2019-11-29 08:58:48 +08002019-2-27 8:55:0 +0800VisualStudio现在很多小伙伴开始使用了 dotnet core 项目,但是如果是从以前的 dotnet framework …...

    2024/4/18 11:52:26
  9. C语言小游戏:拼图游戏

    最近闲着无聊,写了一个拼图游戏,正好学习一下图片的处理。效果图如下:程序中用到了图形库操作,把一张图片分割,用一个二维数组代表各个碎片,初始打乱数组就可以得到打乱的图片。void get_arr() {int book[10] = { 0 };srand((unsigned int)time(NULL)); …...

    2024/4/12 19:27:30
  10. 手机智眼——智慧视觉

    “你给我智眼 帮我辨认食物的热量 你给我智眼 帮我翻译冗长的文章 你给我智眼 帮我找到购物的地方 你给我智眼 帮我走出不认识物品的情况……” &emsp;&emsp;二哈先给大家唱首歌,希望大家喜欢,嘿嘿。因为二哈今天给大家介绍的流量入口就和歌词有关系——“智慧视觉,…...

    2024/4/12 19:27:30
  11. iOS开发证书申请详细教程(真机调试测试使用)

    Appuploader可以辅助在Windows电脑直接申请iOS证书,下面是申请一套iOS开发证书的详细流程 一、下载安装iOS上架辅助软件Appuploader Appuploader下载链接 下载软件包后解压直接使用,无需安装。 如果win 32位系统点击appuploader.exe启动时提示(下图所示),32位系统需要点击…...

    2024/4/12 19:27:30
  12. 超详细的Java基础面试题总结

    最近在备战面试的过程中,整理一下面试题。大多数题目都是自己手敲的,网上也有很多这样的总结。自己感觉总是很乱,所以花了很久把自己觉得重要的东西总结了一下。面向对象和面向过程的区别面向过程:   优点:性能比面向对象高,因为类调用时需要实例化,开销比较大,比较消…...

    2024/4/9 8:27:32
  13. C# AssemblyInfo.cs文件的作用

    C# AssemblyInfo.cs主要用来设定生成的有关程序集的常规信息dll文件的一些参数 请看以下具体说明: //标题: [assembly:AssemblyTitle("编程论坛")] //备注: [assembly:AssemblyDescription("编程爱好者社区!")] //产品名称 [assembly:AssemblyProduc…...

    2024/4/12 19:27:25
  14. C语言小游戏开发

    这个C游戏程序是我的一个同学让我帮他朋友写的,因为一直催我,昨天下午叫我帮的忙,让我赶紧帮他朋友写完。所以昨晚花了几个小时帮他写的。大晚上的,睡意融融,也是难为我了! C语言嘛!控制台程序,外观简陋。见笑见笑! 感觉对于学习C语言程序设计的朋友们非常有好处,所以我拿…...

    2024/4/24 11:05:14
  15. 将h5封装打包成苹果APP,自由发布,不受appstore的限制,使项目变得高大上起来

    可设置用户无法删除 原生APP任意删除 打包制作后无法删除制作任性自由的苹果app没发布过ios app的人是无法体会到苹果大爷的折腾劲,app我们都见惯了,但app从研发到安装到你的手机这个过程,其复杂程度和琐碎程度不是普通人能理…...

    2024/5/1 1:35:04
  16. spring cloud 常见面试题 来理解微服务(通俗易懂)

    为什么要谈 这些理论知识呢 理论知识 = 面试时候的谈资 !!! 你只有 进去公司 才有资格 去做一个码农 ok 话不多说 经历如此漫长的互联网发展 以本人的拙见 软件开发 粗略的 分为 三个阶段 1 单机版 也就是说把 要做的所有应用程序 放置在一个 项目中 最后 将之…...

    2024/4/16 14:28:19
  17. Android | 教你如何开发一键银行卡绑定功能

    前言小编前面几期文章分别给大家介绍了用代码实现微笑抓拍、证件照DIY、拍照翻译的功能开发(链接见文章末尾),本次小编给大家带来的是用代码一键实现银行卡识别与绑定功能。银行卡识别的应用场景介绍开发步骤前,我们先来谈谈银行卡识别的具体应用场景,银行APP、移动支付、…...

    2024/4/19 14:12:18
  18. 那些web前端经典面试题大全及答案

    阅读目录JavaScript部分JQurey部分HTML/CSS部分正则表达式开发及性能优化部分 本篇收录了一些面试中经常会遇到的经典面试题以及自己面试过程中遇到的一些问题,并且都给出了我在网上收集的答案。马上就要过春节了,开年就是崭新的一年,相信很多的前端开发者会有一些跳槽的悸动…...

    2024/4/18 22:04:39
  19. C# properties assemblyinfo.cs

    C# properties assemblyinfo.cs记录程序的版本信息:AssemblyInfo.cs是关于本程序集(一般是dll)的一些信息,主要都是特性,例如版权,所有者,设计者一类的信息。...

    2024/4/12 19:27:10
  20. Android | 教你如何开发扫二维码功能

    前言 &emsp;&emsp;最近要做一个停车场扫码收费的app,在网上搜了一圈,首先接触到了ZXing,上手试了下,集成过程不复杂,但是感觉效果欠佳,比如距离稍微远点儿就扫不出来了,另外角度对的不好,反光或者光线比较暗的时候,成功率也比较低,集成好给我们老大看了下,感…...

    2024/4/12 19:28:06

最新文章

  1. 消除字符串 状压dp

    消除字符串 题目描述 小明喜欢中心对称的字符串&#xff0c;即回文字符串。现在小明手里有一个字符串 S&#xff0c; 小明每次都会进行这样的操作&#xff1a;从 S 中挑选一个回文的子序列&#xff0c;将其从字符串 S 中去除&#xff0c;剩下的字符重组成新的字符串 S。 小明…...

    2024/5/5 20:05:53
  2. 梯度消失和梯度爆炸的一些处理方法

    在这里是记录一下梯度消失或梯度爆炸的一些处理技巧。全当学习总结了如有错误还请留言&#xff0c;在此感激不尽。 权重和梯度的更新公式如下&#xff1a; w w − η ⋅ ∇ w w w - \eta \cdot \nabla w ww−η⋅∇w 个人通俗的理解梯度消失就是网络模型在反向求导的时候出…...

    2024/3/20 10:50:27
  3. 《前端面试题》- JS基础 - 简单谈谈ES6新增了哪些内容

    问题 简单谈谈ES6新增了哪些内容 回答 ES新增的对象有&#xff1a; Symbol、Set、Map、WeakSet和WeakMap、ArrayBuffer、TypedArray、DataView、Promise、GeneratorFunction 和 Generator、Reflect、Proxy 具体可参考&#xff1a;https://www.jianshu.com/p/b54f7ad1cae3ht…...

    2024/5/3 21:35:48
  4. 手写SpringBoot(四)之bean动态加载

    系列文章目录 手写SpringBoot&#xff08;一&#xff09;之简易版SpringBoot 手写SpringBoot&#xff08;二&#xff09;之动态切换Servlet容器 手写SpringBoot&#xff08;三&#xff09;之自动配置 手写SpringBoot&#xff08;四&#xff09;之bean动态加载 手写SpringBoot…...

    2024/4/30 10:02:24
  5. 《享元模式(极简c++)》

    本文章属于专栏- 概述 - 《设计模式&#xff08;极简c版&#xff09;》-CSDN博客 模式说明 方案&#xff1a;享元模式是一种结构型设计模式&#xff0c;旨在通过共享尽可能多的对象来最小化内存使用和提高性能。 优点 减少内存占用&#xff1a;通过共享相似对象的状态&#xf…...

    2024/5/3 19:03:22
  6. 【外汇早评】美通胀数据走低,美元调整

    原标题:【外汇早评】美通胀数据走低,美元调整昨日美国方面公布了新一期的核心PCE物价指数数据,同比增长1.6%,低于前值和预期值的1.7%,距离美联储的通胀目标2%继续走低,通胀压力较低,且此前美国一季度GDP初值中的消费部分下滑明显,因此市场对美联储后续更可能降息的政策…...

    2024/5/4 23:54:56
  7. 【原油贵金属周评】原油多头拥挤,价格调整

    原标题:【原油贵金属周评】原油多头拥挤,价格调整本周国际劳动节,我们喜迎四天假期,但是整个金融市场确实流动性充沛,大事频发,各个商品波动剧烈。美国方面,在本周四凌晨公布5月份的利率决议和新闻发布会,维持联邦基金利率在2.25%-2.50%不变,符合市场预期。同时美联储…...

    2024/5/4 23:54:56
  8. 【外汇周评】靓丽非农不及疲软通胀影响

    原标题:【外汇周评】靓丽非农不及疲软通胀影响在刚结束的周五,美国方面公布了新一期的非农就业数据,大幅好于前值和预期,新增就业重新回到20万以上。具体数据: 美国4月非农就业人口变动 26.3万人,预期 19万人,前值 19.6万人。 美国4月失业率 3.6%,预期 3.8%,前值 3…...

    2024/5/4 23:54:56
  9. 【原油贵金属早评】库存继续增加,油价收跌

    原标题:【原油贵金属早评】库存继续增加,油价收跌周三清晨公布美国当周API原油库存数据,上周原油库存增加281万桶至4.692亿桶,增幅超过预期的74.4万桶。且有消息人士称,沙特阿美据悉将于6月向亚洲炼油厂额外出售更多原油,印度炼油商预计将每日获得至多20万桶的额外原油供…...

    2024/5/4 23:55:17
  10. 【外汇早评】日本央行会议纪要不改日元强势

    原标题:【外汇早评】日本央行会议纪要不改日元强势近两日日元大幅走强与近期市场风险情绪上升,避险资金回流日元有关,也与前一段时间的美日贸易谈判给日本缓冲期,日本方面对汇率问题也避免继续贬值有关。虽然今日早间日本央行公布的利率会议纪要仍然是支持宽松政策,但这符…...

    2024/5/4 23:54:56
  11. 【原油贵金属早评】欧佩克稳定市场,填补伊朗问题的影响

    原标题:【原油贵金属早评】欧佩克稳定市场,填补伊朗问题的影响近日伊朗局势升温,导致市场担忧影响原油供给,油价试图反弹。此时OPEC表态稳定市场。据消息人士透露,沙特6月石油出口料将低于700万桶/日,沙特已经收到石油消费国提出的6月份扩大出口的“适度要求”,沙特将满…...

    2024/5/4 23:55:05
  12. 【外汇早评】美欲与伊朗重谈协议

    原标题:【外汇早评】美欲与伊朗重谈协议美国对伊朗的制裁遭到伊朗的抗议,昨日伊朗方面提出将部分退出伊核协议。而此行为又遭到欧洲方面对伊朗的谴责和警告,伊朗外长昨日回应称,欧洲国家履行它们的义务,伊核协议就能保证存续。据传闻伊朗的导弹已经对准了以色列和美国的航…...

    2024/5/4 23:54:56
  13. 【原油贵金属早评】波动率飙升,市场情绪动荡

    原标题:【原油贵金属早评】波动率飙升,市场情绪动荡因中美贸易谈判不安情绪影响,金融市场各资产品种出现明显的波动。随着美国与中方开启第十一轮谈判之际,美国按照既定计划向中国2000亿商品征收25%的关税,市场情绪有所平复,已经开始接受这一事实。虽然波动率-恐慌指数VI…...

    2024/5/4 23:55:16
  14. 【原油贵金属周评】伊朗局势升温,黄金多头跃跃欲试

    原标题:【原油贵金属周评】伊朗局势升温,黄金多头跃跃欲试美国和伊朗的局势继续升温,市场风险情绪上升,避险黄金有向上突破阻力的迹象。原油方面稍显平稳,近期美国和OPEC加大供给及市场需求回落的影响,伊朗局势并未推升油价走强。近期中美贸易谈判摩擦再度升级,美国对中…...

    2024/5/4 23:54:56
  15. 【原油贵金属早评】市场情绪继续恶化,黄金上破

    原标题:【原油贵金属早评】市场情绪继续恶化,黄金上破周初中国针对于美国加征关税的进行的反制措施引发市场情绪的大幅波动,人民币汇率出现大幅的贬值动能,金融市场受到非常明显的冲击。尤其是波动率起来之后,对于股市的表现尤其不安。隔夜美国股市出现明显的下行走势,这…...

    2024/5/4 18:20:48
  16. 【外汇早评】美伊僵持,风险情绪继续升温

    原标题:【外汇早评】美伊僵持,风险情绪继续升温昨日沙特两艘油轮再次发生爆炸事件,导致波斯湾局势进一步恶化,市场担忧美伊可能会出现摩擦生火,避险品种获得支撑,黄金和日元大幅走强。美指受中美贸易问题影响而在低位震荡。继5月12日,四艘商船在阿联酋领海附近的阿曼湾、…...

    2024/5/4 23:54:56
  17. 【原油贵金属早评】贸易冲突导致需求低迷,油价弱势

    原标题:【原油贵金属早评】贸易冲突导致需求低迷,油价弱势近日虽然伊朗局势升温,中东地区几起油船被袭击事件影响,但油价并未走高,而是出于调整结构中。由于市场预期局势失控的可能性较低,而中美贸易问题导致的全球经济衰退风险更大,需求会持续低迷,因此油价调整压力较…...

    2024/5/4 23:55:17
  18. 氧生福地 玩美北湖(上)——为时光守候两千年

    原标题:氧生福地 玩美北湖(上)——为时光守候两千年一次说走就走的旅行,只有一张高铁票的距离~ 所以,湖南郴州,我来了~ 从广州南站出发,一个半小时就到达郴州西站了。在动车上,同时改票的南风兄和我居然被分到了一个车厢,所以一路非常愉快地聊了过来。 挺好,最起…...

    2024/5/4 23:55:06
  19. 氧生福地 玩美北湖(中)——永春梯田里的美与鲜

    原标题:氧生福地 玩美北湖(中)——永春梯田里的美与鲜一觉醒来,因为大家太爱“美”照,在柳毅山庄去寻找龙女而错过了早餐时间。近十点,向导坏坏还是带着饥肠辘辘的我们去吃郴州最富有盛名的“鱼头粉”。说这是“十二分推荐”,到郴州必吃的美食之一。 哇塞!那个味美香甜…...

    2024/5/4 23:54:56
  20. 氧生福地 玩美北湖(下)——奔跑吧骚年!

    原标题:氧生福地 玩美北湖(下)——奔跑吧骚年!让我们红尘做伴 活得潇潇洒洒 策马奔腾共享人世繁华 对酒当歌唱出心中喜悦 轰轰烈烈把握青春年华 让我们红尘做伴 活得潇潇洒洒 策马奔腾共享人世繁华 对酒当歌唱出心中喜悦 轰轰烈烈把握青春年华 啊……啊……啊 两…...

    2024/5/4 23:55:06
  21. 扒开伪装医用面膜,翻六倍价格宰客,小姐姐注意了!

    原标题:扒开伪装医用面膜,翻六倍价格宰客,小姐姐注意了!扒开伪装医用面膜,翻六倍价格宰客!当行业里的某一品项火爆了,就会有很多商家蹭热度,装逼忽悠,最近火爆朋友圈的医用面膜,被沾上了污点,到底怎么回事呢? “比普通面膜安全、效果好!痘痘、痘印、敏感肌都能用…...

    2024/5/5 8:13:33
  22. 「发现」铁皮石斛仙草之神奇功效用于医用面膜

    原标题:「发现」铁皮石斛仙草之神奇功效用于医用面膜丽彦妆铁皮石斛医用面膜|石斛多糖无菌修护补水贴19大优势: 1、铁皮石斛:自唐宋以来,一直被列为皇室贡品,铁皮石斛生于海拔1600米的悬崖峭壁之上,繁殖力差,产量极低,所以古代仅供皇室、贵族享用 2、铁皮石斛自古民间…...

    2024/5/4 23:55:16
  23. 丽彦妆\医用面膜\冷敷贴轻奢医学护肤引导者

    原标题:丽彦妆\医用面膜\冷敷贴轻奢医学护肤引导者【公司简介】 广州华彬企业隶属香港华彬集团有限公司,专注美业21年,其旗下品牌: 「圣茵美」私密荷尔蒙抗衰,产后修复 「圣仪轩」私密荷尔蒙抗衰,产后修复 「花茵莳」私密荷尔蒙抗衰,产后修复 「丽彦妆」专注医学护…...

    2024/5/4 23:54:58
  24. 广州械字号面膜生产厂家OEM/ODM4项须知!

    原标题:广州械字号面膜生产厂家OEM/ODM4项须知!广州械字号面膜生产厂家OEM/ODM流程及注意事项解读: 械字号医用面膜,其实在我国并没有严格的定义,通常我们说的医美面膜指的应该是一种「医用敷料」,也就是说,医用面膜其实算作「医疗器械」的一种,又称「医用冷敷贴」。 …...

    2024/5/4 23:55:01
  25. 械字号医用眼膜缓解用眼过度到底有无作用?

    原标题:械字号医用眼膜缓解用眼过度到底有无作用?医用眼膜/械字号眼膜/医用冷敷眼贴 凝胶层为亲水高分子材料,含70%以上的水分。体表皮肤温度传导到本产品的凝胶层,热量被凝胶内水分子吸收,通过水分的蒸发带走大量的热量,可迅速地降低体表皮肤局部温度,减轻局部皮肤的灼…...

    2024/5/4 23:54:56
  26. 配置失败还原请勿关闭计算机,电脑开机屏幕上面显示,配置失败还原更改 请勿关闭计算机 开不了机 这个问题怎么办...

    解析如下&#xff1a;1、长按电脑电源键直至关机&#xff0c;然后再按一次电源健重启电脑&#xff0c;按F8健进入安全模式2、安全模式下进入Windows系统桌面后&#xff0c;按住“winR”打开运行窗口&#xff0c;输入“services.msc”打开服务设置3、在服务界面&#xff0c;选中…...

    2022/11/19 21:17:18
  27. 错误使用 reshape要执行 RESHAPE,请勿更改元素数目。

    %读入6幅图像&#xff08;每一幅图像的大小是564*564&#xff09; f1 imread(WashingtonDC_Band1_564.tif); subplot(3,2,1),imshow(f1); f2 imread(WashingtonDC_Band2_564.tif); subplot(3,2,2),imshow(f2); f3 imread(WashingtonDC_Band3_564.tif); subplot(3,2,3),imsho…...

    2022/11/19 21:17:16
  28. 配置 已完成 请勿关闭计算机,win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机...

    win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机”问题的解决方法在win7系统关机时如果有升级系统的或者其他需要会直接进入一个 等待界面&#xff0c;在等待界面中我们需要等待操作结束才能关机&#xff0c;虽然这比较麻烦&#xff0c;但是对系统进行配置和升级…...

    2022/11/19 21:17:15
  29. 台式电脑显示配置100%请勿关闭计算机,“准备配置windows 请勿关闭计算机”的解决方法...

    有不少用户在重装Win7系统或更新系统后会遇到“准备配置windows&#xff0c;请勿关闭计算机”的提示&#xff0c;要过很久才能进入系统&#xff0c;有的用户甚至几个小时也无法进入&#xff0c;下面就教大家这个问题的解决方法。第一种方法&#xff1a;我们首先在左下角的“开始…...

    2022/11/19 21:17:14
  30. win7 正在配置 请勿关闭计算机,怎么办Win7开机显示正在配置Windows Update请勿关机...

    置信有很多用户都跟小编一样遇到过这样的问题&#xff0c;电脑时发现开机屏幕显现“正在配置Windows Update&#xff0c;请勿关机”(如下图所示)&#xff0c;而且还需求等大约5分钟才干进入系统。这是怎样回事呢&#xff1f;一切都是正常操作的&#xff0c;为什么开时机呈现“正…...

    2022/11/19 21:17:13
  31. 准备配置windows 请勿关闭计算机 蓝屏,Win7开机总是出现提示“配置Windows请勿关机”...

    Win7系统开机启动时总是出现“配置Windows请勿关机”的提示&#xff0c;没过几秒后电脑自动重启&#xff0c;每次开机都这样无法进入系统&#xff0c;此时碰到这种现象的用户就可以使用以下5种方法解决问题。方法一&#xff1a;开机按下F8&#xff0c;在出现的Windows高级启动选…...

    2022/11/19 21:17:12
  32. 准备windows请勿关闭计算机要多久,windows10系统提示正在准备windows请勿关闭计算机怎么办...

    有不少windows10系统用户反映说碰到这样一个情况&#xff0c;就是电脑提示正在准备windows请勿关闭计算机&#xff0c;碰到这样的问题该怎么解决呢&#xff0c;现在小编就给大家分享一下windows10系统提示正在准备windows请勿关闭计算机的具体第一种方法&#xff1a;1、2、依次…...

    2022/11/19 21:17:11
  33. 配置 已完成 请勿关闭计算机,win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机”的解决方法...

    今天和大家分享一下win7系统重装了Win7旗舰版系统后&#xff0c;每次关机的时候桌面上都会显示一个“配置Windows Update的界面&#xff0c;提示请勿关闭计算机”&#xff0c;每次停留好几分钟才能正常关机&#xff0c;导致什么情况引起的呢&#xff1f;出现配置Windows Update…...

    2022/11/19 21:17:10
  34. 电脑桌面一直是清理请关闭计算机,windows7一直卡在清理 请勿关闭计算机-win7清理请勿关机,win7配置更新35%不动...

    只能是等着&#xff0c;别无他法。说是卡着如果你看硬盘灯应该在读写。如果从 Win 10 无法正常回滚&#xff0c;只能是考虑备份数据后重装系统了。解决来方案一&#xff1a;管理员运行cmd&#xff1a;net stop WuAuServcd %windir%ren SoftwareDistribution SDoldnet start WuA…...

    2022/11/19 21:17:09
  35. 计算机配置更新不起,电脑提示“配置Windows Update请勿关闭计算机”怎么办?

    原标题&#xff1a;电脑提示“配置Windows Update请勿关闭计算机”怎么办&#xff1f;win7系统中在开机与关闭的时候总是显示“配置windows update请勿关闭计算机”相信有不少朋友都曾遇到过一次两次还能忍但经常遇到就叫人感到心烦了遇到这种问题怎么办呢&#xff1f;一般的方…...

    2022/11/19 21:17:08
  36. 计算机正在配置无法关机,关机提示 windows7 正在配置windows 请勿关闭计算机 ,然后等了一晚上也没有关掉。现在电脑无法正常关机...

    关机提示 windows7 正在配置windows 请勿关闭计算机 &#xff0c;然后等了一晚上也没有关掉。现在电脑无法正常关机以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容&#xff0c;让我们赶快一起来看一下吧&#xff01;关机提示 windows7 正在配…...

    2022/11/19 21:17:05
  37. 钉钉提示请勿通过开发者调试模式_钉钉请勿通过开发者调试模式是真的吗好不好用...

    钉钉请勿通过开发者调试模式是真的吗好不好用 更新时间:2020-04-20 22:24:19 浏览次数:729次 区域: 南阳 > 卧龙 列举网提醒您:为保障您的权益,请不要提前支付任何费用! 虚拟位置外设器!!轨迹模拟&虚拟位置外设神器 专业用于:钉钉,外勤365,红圈通,企业微信和…...

    2022/11/19 21:17:05
  38. 配置失败还原请勿关闭计算机怎么办,win7系统出现“配置windows update失败 还原更改 请勿关闭计算机”,长时间没反应,无法进入系统的解决方案...

    前几天班里有位学生电脑(windows 7系统)出问题了&#xff0c;具体表现是开机时一直停留在“配置windows update失败 还原更改 请勿关闭计算机”这个界面&#xff0c;长时间没反应&#xff0c;无法进入系统。这个问题原来帮其他同学也解决过&#xff0c;网上搜了不少资料&#x…...

    2022/11/19 21:17:04
  39. 一个电脑无法关闭计算机你应该怎么办,电脑显示“清理请勿关闭计算机”怎么办?...

    本文为你提供了3个有效解决电脑显示“清理请勿关闭计算机”问题的方法&#xff0c;并在最后教给你1种保护系统安全的好方法&#xff0c;一起来看看&#xff01;电脑出现“清理请勿关闭计算机”在Windows 7(SP1)和Windows Server 2008 R2 SP1中&#xff0c;添加了1个新功能在“磁…...

    2022/11/19 21:17:03
  40. 请勿关闭计算机还原更改要多久,电脑显示:配置windows更新失败,正在还原更改,请勿关闭计算机怎么办...

    许多用户在长期不使用电脑的时候&#xff0c;开启电脑发现电脑显示&#xff1a;配置windows更新失败&#xff0c;正在还原更改&#xff0c;请勿关闭计算机。。.这要怎么办呢&#xff1f;下面小编就带着大家一起看看吧&#xff01;如果能够正常进入系统&#xff0c;建议您暂时移…...

    2022/11/19 21:17:02
  41. 还原更改请勿关闭计算机 要多久,配置windows update失败 还原更改 请勿关闭计算机,电脑开机后一直显示以...

    配置windows update失败 还原更改 请勿关闭计算机&#xff0c;电脑开机后一直显示以以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容&#xff0c;让我们赶快一起来看一下吧&#xff01;配置windows update失败 还原更改 请勿关闭计算机&#x…...

    2022/11/19 21:17:01
  42. 电脑配置中请勿关闭计算机怎么办,准备配置windows请勿关闭计算机一直显示怎么办【图解】...

    不知道大家有没有遇到过这样的一个问题&#xff0c;就是我们的win7系统在关机的时候&#xff0c;总是喜欢显示“准备配置windows&#xff0c;请勿关机”这样的一个页面&#xff0c;没有什么大碍&#xff0c;但是如果一直等着的话就要两个小时甚至更久都关不了机&#xff0c;非常…...

    2022/11/19 21:17:00
  43. 正在准备配置请勿关闭计算机,正在准备配置windows请勿关闭计算机时间长了解决教程...

    当电脑出现正在准备配置windows请勿关闭计算机时&#xff0c;一般是您正对windows进行升级&#xff0c;但是这个要是长时间没有反应&#xff0c;我们不能再傻等下去了。可能是电脑出了别的问题了&#xff0c;来看看教程的说法。正在准备配置windows请勿关闭计算机时间长了方法一…...

    2022/11/19 21:16:59
  44. 配置失败还原请勿关闭计算机,配置Windows Update失败,还原更改请勿关闭计算机...

    我们使用电脑的过程中有时会遇到这种情况&#xff0c;当我们打开电脑之后&#xff0c;发现一直停留在一个界面&#xff1a;“配置Windows Update失败&#xff0c;还原更改请勿关闭计算机”&#xff0c;等了许久还是无法进入系统。如果我们遇到此类问题应该如何解决呢&#xff0…...

    2022/11/19 21:16:58
  45. 如何在iPhone上关闭“请勿打扰”

    Apple’s “Do Not Disturb While Driving” is a potentially lifesaving iPhone feature, but it doesn’t always turn on automatically at the appropriate time. For example, you might be a passenger in a moving car, but your iPhone may think you’re the one dri…...

    2022/11/19 21:16:57