类型-指定意图数据的显示类型(MIME类型)。通常这个类型是从数据本身推断出来的。通过设置此属性,可以禁用该评估并强制显式类型。 组件-指定用于意图的组件类的显式名称。...通常这是通过查看意图中的其他信息(操作,数据/类型和类别)并将其与可以处理它的组件匹配来确定的。如果设置了该属性,则不执行评估,并且完全按照原样使用该组件。...当使用隐式意图时,给定这样一个任意的意图,我们需要知道如何处理它。...意图解析机制基本上是围绕安装的应用程序包中的所有 描述匹配一个Intent。...鉴于这些功能,以下意图将解析为NotesList活动: {action = android.app.action.MAIN}匹配所有可用作应用程序顶级入口点的活动。
4.0 4.1.3.1 组合导出属性和意图过滤器(对于活动) 我们已经解释了如何实现本指南中的四类活动:私有活动,公共活动,伙伴活动和内部活动。...导出属性的值 True 意图过滤器已定义 公开 意图过滤器未定义 公开、伙伴、内部 表 4.1-2 当未指定Activity的导出属性时,Activity是否为公开的,取决于Activity的意图过滤器的存在与否...如果定义了任何意图过滤器,则该活动是公开的;否则它是私有的。...不应该使用未定义的意图过滤器和导出属性false的原因,是 Android 的行为存在漏洞,并且由于意图过滤器的工作原理,其他应用的活动可能会意外调用它。下面的两个图展示了这个解释。...由于这个漏洞,可能会将敏感信息发送到其他应用,或者应用可能会收到意外的返回值。 如上所示,使用意图过滤器,将隐式意图发送到私有应用,可能会导致意外行为,因此最好避免此设置。
表 4.4-3 导出属性的值 True False 意图过滤器已定义 公共 (不使用) 意图过滤器未定义 公共,伙伴,内部 私有 如果服务中的导出属性是未指定的,服务是否公开由是否定义了意图过滤器决定...通常,如前所述,最好避免依赖任何给定 API 的默认行为的实现; 此外,如果存在显式方法来配置重要的安全相关设置,例如导出属性,那么使用这些方法总是一个好主意。...不应该使用未定义的意图过滤器和导出属性false的原因是,Android 的行为存在漏洞,并且由于意图过滤器的工作原理,可能会意外调用其他应用的服务。...就安全性而言,这里存在一个问题,应用 A 尝试通过发送隐式意图来,调用应用中的私有服务,但实际上调用了之前安装的应用 B 中的公共活动(B-1)。...如果应用 B 是恶意软件,它会导致敏感信息的泄漏。 如上所示,使用意图过滤器向私有服务发送隐式意图,可能会导致意外行为,因此最好避免此设置。
隐式意图和显式意图: 显式意图:显式意图明确指明了启动活动的上下文和想要启动的目标活动,显式意图明确指定了Intent应该传递给哪个组件。 隐式意图:没有明确指定组件名的Intent为隐式意图。...开启自己应用的界面用显式意图,开启其他应用(一般指系统应用)的时候用隐式意图(比如拨打电话)。 显式意图安全一些,隐式意图可以通过匹配intent-filter里面的标签对应来跳转到相应的页面 。...可以配置多个意图过滤器,只要能够完整的匹配任何一个意图过滤器intent-filter,就可以跳转到那个activity 如果intent-filter里面只有和标签...参数 intent Intent:开始的意图。 requestCode int:如果>=0,则当活动退出时,此代码将在onActivityResult()中返回。...如果您的活动将noHistory设置为true,则永远不会调用此方法。
将应用分离为组件有助于应用的一部分在应用之间重用。 活动。 活动是用户界面的元素之一。 一般来说,一个活动通常代表一个界面。 服务。 服务是 Android 中的后台工作装置。 服务可以无限期运行。...最知名的服务示例是在后台播放音乐的媒体播放器,即使用户离开已启动此服务的活动。 广播接收器。 广播接收器是应用的组件,它接收广播消息并根据所获得的消息启动工作流。 内容供应器。...其他应用可能会调用此活动,将此组件的功能集成到其应用中。 1 <?xml version="1.0" encoding="utf−8"?...对于第一种意图类型,开发人员可以在他的应用的组件中实现挑选功能,并使用带有组件名称数据字段的显式意图调用此组件。当然,开发人员可以调用其他应用的组件,但是在这种情况下,他必须确保该应用安装在系统中。...根据这个信息,使用意图过滤器,操作系统选择可以处理意图的适当组件。意图过滤器定义了组件可以处理的意图的“模板”。当然,相同的应用可以定义一个意图过滤器,它将处理来自其他组件的意图。
下面介绍为什么原则上禁止使用带有意图过滤器定义的exported ="false"。...表 4.2-3 可用与否,导出属性和意图过滤器元素的组合 导出属性的值 True False 意图过滤器已定义 OK 不使用 意图过滤器未定义 OK OK 未指定接收器的导出属性时,接收器是否为公共的...,取决于该接收器的意图过滤器的存在与否 [6]。...即使在相同的应用中将广播发送到私有接收器,其他应用中的公共接收器也可能会意外调用。 这就是为什么禁止指定带有意图过滤器定义的exported ="false"。 以下两张图展示了意外调用的发生情况。...应用只有在第一次启动后才能接收广播;因此,安装后无法使用接收的广播作为启动操作的触发器。
将应用分离为组件有助于应用的一部分在应用之间重用。 活动。 活动是用户界面的元素之一。 一般来说,一个活动通常代表一个界面。 服务。 服务是 Android 中的后台工作装置。...最知名的服务示例是在后台播放音乐的媒体播放器,即使用户离开已启动此服务的活动。 广播接收器。 广播接收器是应用的组件,它接收广播消息并根据所获得的消息启动工作流。 内容供应器。...其他应用可能会调用此活动,将此组件的功能集成到其应用中。 1 <?xml version="1.0" encoding="utf−8"?...对于第一种意图类型,开发人员可以在他的应用的组件中实现挑选功能,并使用带有组件名称数据字段的显式意图调用此组件。当然,开发人员可以调用其他应用的组件,但是在这种情况下,他必须确保该应用安装在系统中。...根据这个信息,使用意图过滤器,操作系统选择可以处理意图的适当组件。意图过滤器定义了组件可以处理的意图的“模板"。当然,相同的应用可以定义一个意图过滤器,它将处理来自其他组件的意图。
[2] Android 系统搜索所有应用中与 Intent 匹配的 Intent 过滤器。...FirstActivity就会发起意图,系统会匹配到SecondActivity(当然是使用intent-filter中的信息、、),看一看效果: ?...如果未在 Intent 过滤器中声明此类别,则隐式 Intent 不会被任何被系统匹配到,所以永远不会有组件响应你的意图。...,也就是说Android系统根据意图的、、匹配到多个复合的组件,那么将会出现选择框让你来选择。...d).必须是Intent的属性和组件过滤器的信息完全匹配上,组件才会做出相应,否则没有组件响应。
android:name=".PrivateActivity" android:label="@string/app_name" android:exported="false" /> 意图过滤器不应该设置在仅用于单个应用的活动中...由于意图过滤器的特性,以及工作原理,即使您打算向内部的私有活动发送意图,但如果通过意图过滤器发送,则可能会无意中启动另一个活动。...更多详细信息,请参阅高级主题“4.1.3.1 结合导出属性和意图过滤器设置(用于活动)”。 AndroidManifest.xml(不推荐) <!...但是,即使使用此方法,内容也可以由第三方读取,因此您应该避免使用FLAG_ACTIVITY_NEW_TASK。...请参阅“4.1.3.1 组合导出属性和意图过滤器设置(对于活动)” 4.1.2.9 小心并安全地处理来自被请求活动的返回数据(必需) 根据您访问的活动类型,风险略有不同,但在处理作为返回值的收到的Intent
Android 隐式Intent的实例详解 前言: 顾名思义,隐式意图就是在不明确设置激活对象的前提下寻找最匹配的组件,举个例子,比如有5个人: (1)A:170cm (2)B:160cm (3)...“,但是如果是隐式意图,则会说:”我要选择170cm的人“,虽然没有指明要选A,但会寻找条件最匹配的人。...在intent过滤器中类似于上面例子中的”身高“条件的匹配条件有: (1)action (2)category (3)data:scheme、host、path、type 当在程序中设置了这些激活组件的条件...,程序就会去寻找最匹配的组件,但是注意:只要有一点不匹配,则就是不匹配; 比如: Intent intent = new Intent(); intent.setAction("a");//此句只是指定了...隐式Intent的核心代码 首先是在AndroidManifest.xml中为某个Activity设置意图过滤器: <activity <intent-filter <action
那些想要处理被扫描到的NFC标签的应用程序可以声明一个意图过滤器(declare an intent filter ),并要求处理这些数据。... ACTION_TECH_DISCOVERED:如果没有活动注册处理ACTION_NDEF_DISCOVERED intent,标签分发系统尝试用这个意图启动应用程序...因为NFC标签的多样化和多次性,往往不在你的控制之下,这并不总是可能的,这就是为什么你在必要时需要备选其他两种意图。当你需要控制标签的类型和数据写入,建议您使用NDEF格式的标签。...尝试按常规的方式使用intent filter过滤器来启动一个activity. 如果该应用匹配了过滤器的规则,同时又匹配了AAR的规则,那么启动该activity....如果匹配了过滤器的规则,但是未匹配AAR规则;如果一个intent引发多个activity的启动(译者注:会弹出提示用户手动选择);或者没有任何一个activity过滤到一个intent;那么将按照AAR
* * 此方法引发{@link android.content.ActivityNotFoundException} * 如果没有找到运行给定意图的活动。...* 当此活动退出时,您的 * 将使用给定的请求代码调用onActivityResult()方法。...* * 此方法引发{@link android.content.ActivityNotFoundException} * 如果没有找到运行给定意图的活动。...} * 如果没有找到运行给定意图的活动。...* @param target 哪个活动正在执行启动(并因此接收任何结果);如果未进行此调用,则可能为null从一项活动中。 * @param intent 启动的实际意图。
(实现访问记录)示意图 三、通用模块(统一响应与统一异常) 统一响应(对象)示意图 统一响应示意图 统一异常(对象)示意图 通用索引表 ---- 这不是一个完整的广告系统,主要涉及两方面 广告检索 、...(实现访问记录)示意图 ?...自定义过滤器(实现访问记录),继承ZuulFilter类: 1.实现过滤器 路由前后顺序、 2.此过滤器选择路由后的执行顺序 、 3.此过滤器是否执行、 4.要执行的方法 这里用到(RequestContext.getCurrentContext...三、通用模块(统一响应与统一异常) 为什么要做这个模块,响应与异常处理,每个微服务大都需要的,要是每个服务都使用一份独特的,这样特别不利于维护。...统一的异常处理,不直接展示错误,对用户友好 ; 异常分类,便于排查问题,debug ; 降低业务代码中对异常处理的耦合。 统一响应(对象)示意图 ? 统一响应示意图 ? 统一异常(对象)示意图 ?
4.4.2.2 小心并安全地处理收到的数据(必需) 与“活动”相同,如果是“服务”,则在处理收到的意图数据时,你应该做的第一件事是输入验证。 同样在服务的用户方,有必要验证来自服务的结果信息的安全性。...请参阅“4.1.2.5 小心并安全地处理收到的意图(必需)”和“4.1.2.9 小心并安全地处理从被请求活动返回的数据”。 在服务中,你还应该小心实现调用方法,并通过消息交换数据。...4.4.2.6 如果目标是固定的,使用显式意图(必需) 当通过隐式意图使用服务时,如果意图过滤器的定义相同,则意图会发送到首先之前的服务。...如果之前安装了恶意软件,它故意定义了同一个意图过滤器,则意图会发送到恶意软件并发生信息泄露。 另一方面,当通过显式意图使用服务时,只有预期的服务会收到意图,所以这样更安全。...还有一些要考虑的要点,请参阅“4.1.2.8 如果目标活动是预定义的,则使用显式意图(必需)”。
稍加品味,细心的读者可能会注意到,人工分析告警的过程,其实是在试图解释“为什么会出现告警所描述的网络活动?”。 即,首先假定所有网络活动都存在某种内在意图,包括业务意图和攻击意图。...如果告警所指示的网络活动能够基于某种攻击意图作出合理解释,即可据此判定告警危害程度。反之,如果找不到合理的攻击意图来解释网络活动,或者基于某种业务意图解释起来更加合理,就可以将告警认定为误报。...关注网络活动背后的内在意图,其实是一个非常高效的思路。 因此,自动化告警筛选应当对告警所指示的网络行为的内在意图进行评估。相比于业务意图,我们暂时先着重于攻击意图评估的实现。...“破坏系统完整性” 从攻击收益的角度看,其攻击意图尚无法定论,攻击者可能只是一个愉快犯,也可能是窃取敏感数据的黑产分子 … 经过长期摸索和实践,我们最终找到了一种通过二维向量表示攻击意图的方法。...虽然仍然无法完全消除低价值告警,但相比于目前的大多数告警筛选方法已有很大提高。在本系列的下一篇文章中,将会详细探讨这种攻击意图评估模型的构建方法,敬请期待。
基于意图的网络最近十分火爆,主要是由于思科密集的营销活动。那么基于意图的网络究竟是什么呢?...关系是关键,因为这种关系将反映意图并“隐藏”实现给定连接所需的必要操作: https://gist.github.com/astianseb/563706e919638749fe0ddc7e30a55902...剩下的两个:“网络状态意识”和“保证和动态优化/修复”?这就是闭环编排架构发挥作用的地方。为了获得网络状态,我们需要收集表示状态的指标,还需要策略实施来动态更改此状态并提供修复措施。...它只强制执行给定的策略并告诉编排器该做什么。编排器作用于编排对象并实施给定的生命周期动作。 我们可以讨论指标集合和策略引擎是否应该成为编排系统中的一部分。...它允许我们创建动态系统,其中状态根据给定的指标进行更改。 总结 我们使用现有的概念演示了基于意图的网络系统(IBNS)。为什么这很重要?因为我们可以将基于意图的网络概念应用于现有网络。
结果示意图 正则表达式的分割功能 * String类的功能:public String[] split(String regex) * split方法 根据匹配给定的正则表达式来拆分此字符串。 ...此方法返回的数组包含此字符串的子字符串, 每个子字符串都由另一个匹配给定表达式的子字符串终止, 或者由此字符串末尾终止。 数组中的子字符串按它们在此字符串中出现的顺序排列。...* String类的功能:public String[] split(String regex) * split方法 根据匹配给定的正则表达式来拆分此字符串。...此方法返回的数组包含此字符串的子字符串, 每个子字符串都由另一个匹配给定表达式的子字符串终止, 或者由此字符串末尾终止。...,每个字符都能被匹配上 如果切割就会切成碎片无法遍历,返回结果为空 String[] arr1 = regex1.split("\\.")
客户端建立电路是昂贵的。- 为什么要这样做? 任何单个服务器可能被 compromise,无法信任它。 无法避免信任客户端机器。 为什么我们需要洋葱密钥以及身份密钥?...如果用户正在运行银行应用程序(活动),则没有其他活动获取用户的输入。 意图:Android 中的基本消息原语。 代表应用程序意图做某事/与另一个组件交互。...显式意图:指定组件名称。 隐式意图:没有组件名称,因此系统必须找出。 查看动作,数据,类别。 如果有多个组件匹配,也可以询问用户要使用哪个应用程序。...– 存在的互动通常是硬编码到特定的 URL。 例如,链接到联系管理器应用程序的 URL:用户无法选择新的。 越来越好:尝试解决此问题的“Web 意图”。...例如,可以在意图过滤器中创建活动(在清单中): 示例: <action android:name="android.intent.action.VIEW
仅在同一应用内使用的接收器,不应设计为设置意图过滤器。 由于意图过滤器的特性,即使通过意图过滤器调用同一应用中的私有接收器,其他应用的公共私有也可能被意外调用。...android:name="org.jssec.android.broadcast.MY_ACTION" /> 请参阅“4.2.3.1 导出属性和意图过滤器设置的组合...方法是,通过将receiverPermission指定为内部定义的签名权限,并使可靠的广播接收器声明使用此签名权限,来发送广播。...由于在预设情况下,粘性广播被隐式意图使用。 具有指定receiverPermission参数的广播无法发送。...4.2.2.7 注意不指定receiverPermission的有序广播无法传递(必需) 不指定receiverPermission参数的有序广播,可以由未指定的大量应用接收,包括恶意软件。
领取专属 10元无门槛券
手把手带您无忧上云