首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

安卓应用安全指南 4.1.2 创建使用活动 规则书

由于意图过滤器特性,以及工作原理,即使您打算向内部私有活动发送意图,如果通过意图过滤器发送,则可能会无意中启动另一个活动。...活动启动模式可以在AndroidManifest.xml文件android:launchMode属性中显式设置,但由于上面解释原因,这不应该在活动声明中设置,并且该值应该保留为默认"standard...因此必要在执行期间不更改Activity启动模式。...这是因为,即使通过软件包名称限制目标,恶意应用仍可能伪造与真实应用相同软件包名称。 为了消除这种风险,必要考虑使用伙伴或内部活动。...例如,从启动器启动活动始终是根活动。 根活动更多详细信息,请参阅“4.1.3.3 发送到活动意图”和“4.1.3.4 根活动”。

1.3K20

Android端SpyNote恶意软件技术层面深度剖析

一般来说,我们下列几种方法来为应用程序创建入口点: 1、通过处理MAIN和LAUNCHER类型Intent启动器Activity; 2、后台运行服务; 3、广播接收器,当系统发送应用程序期望广播时被调用...; 4、应用程序中定义attachBaseContext方法声明; App隐藏 安装后,我们注发现在应用程序启动器中是看不到该应用程序。...中不指定启动器Activity Intent(CATEGORY_LAUNCHER); 如下图所示,SpyNote启动器Activity并没有CATEGORY_LAUNCHE,这样就可以达到隐藏目的了...除了隐藏安装之外,SpyNote还会将其从Android设备“最近使用应用”页面中隐藏自己活动,这一点可以通过在AndroidManifest.xml中将android:excludeFromRecents...文件中为指定URL添加intent过滤器等); 3、使用一个单独启动器App,这个App只会向恶意软件发送intent,恶意软件接收到intent后便会启动; 分析后发现,SpyNote恶意软件应用程序可以通过外部触发器启动

21510
您找到你想要的搜索结果了吗?
是的
没有找到

《Monkey Android》第5课之剖析第一个App

MainAcivity.java代码分析 顾名思义,Main意思是主要,Acivity意思是活动;那么,MainAcivity.java源文件作用肯定就是: 主要活动窗口。...2.一个复写(Override)方法onCreate,为什么要复写它呢? 3.setContentView()方法又是做什么呢?...给翻译一下就是: 所有在App中能看到和做都是在Activity上。...表示此Acivity是一个启动器, 显示在Launcher中; action和category同时作用表示该activity是App启动时加载第一个Activity。...下课 学习了本节课程,相信一定能够大致懂得第一个App里面不同文件作用,为自己写出代码作铺垫。 什么问题请在下面留言评论,我们一起进步!

45420

安卓应用安全指南 4.1.3 创建使用活动 高级话题

例如,当默认活动启动器启动时,此活动将是根活动。 根据 Android 规范,发送到根Activity意图内容可以从任意应用中读取。 因此,必要采取对策,不要将敏感信息发送到根活动。...被调用活动成为根活动,取决于以下内容。 被调用活动启动模式 被调用活动任务及其启动模式 首先,让解释一下“被调用活动启动模式”。...singleTop 这个启动模式和“标准”相同,除了启动一个活动,它显示在前台任务最前面时,不会生成实例。 singleTask 这个启动模式根据 Affinity 值确定活动所属任务。...singleInstance 与singleTask相同以下几点不同。 只有根活动可以属于新生成任务。 因此,通过此模式启动活动实例,始终是根活动。...此时,发送给私有活动敏感信息,在任务历史中记录,因此可以从其他应用读取。 仅供参考,调用方活动和私有活动都具有相同 Affinity。 AndroidManifest.xml(不推荐) <?

1.4K20

Android:双11已经过了双12都要到了,还不给你APP加上自动换图标的功能吗?

为此,特意查看了手机上某宝APP的当前版本,并对比了历史版本上图标,发现并不对应。 默认是88会员节专属图标,而现在显示是双11图标。...了以上知识储备后,下面就该剖析一下这个需求具体场景了。...场景剖析 以电商类APP双11活动为例,在双11活动开始前某个时间点(比如10天前)就要开始对活动预热,此时就要实现图标的自动更换,而在活动结束之后,也必须要能更换回正常图标,并且要求过程尽量对用户无感知...,定义一个数据类: /** * 切换图标任务 */ data class SwitchIconTask (val launcherComponentClassName: String, // 启动器组件类名...开放添加图标切换任务接口,做好参数合法性校验: /** * 启动器图标管理器 */ object LauncherIconManager { /** 切换图标任务Map */

3.1K20

安卓入门-第二章-探究活动

需要注意是,给主活动指定label不仅会成为标题栏中内容,还会成为启动器(Launcher)中应用程序显示名称。  ...另外需要注意,如果你应用程序中没有声明任何一个活动作为主活动,这个程序仍然是可以正常安装,只是你无法在启动器中看到或者打开这个程序。...唯一问题在于,你在启动器中点击应用图标只会进入到该应用活动,那么怎样才能由主活动跳转到其他活动呢?我们现在就来一起看一看。...需要注意是,虽然我们声明了ThirdActivity是可以响应打开网页Intent实际上这个活动并没有加载并显示网页功能,所以在真正项目中尽量不要出现这种可能误导用户行为,不然会让用户对我们应用产生负面的印象...那么这样做什么意义呢?想象以下场景,假设我们程序中有一个活动是允许其他程序调用,如果我们想实现其他程序和我们程序可以共享这个活动实例,应该如何实现呢?

2.9K20

Android Oreo 常见问题 2.0 | Android 开发者 FAQ Vol.9

总而言之,本期 Android 开发者 FAQ 为大家带来了一些关注度较高问题及相应解答,这些问题有的是我们在微信公众平台收到留言,快来看看您提问题上墙了吗?...希望阅读本期 FAQ后,您问题都能迎刃而解。 Q: 什么时候能更新到 Android 8.0 Oreo ? 设备适配吗? ?...A: 通知圆点没有提供在上述设备默认启动器(Launcher)中支持(即便您可以在 Setting 中看到开关通知圆点选项)。...您可以在 Google Play Store 上下载支持这个特性其他启动器。 Q: 怎么开启 Nexus 5X / 6P 以及 Pixel C 上 “自动打开 Wi-Fi” 功能? ?...以上就是新一批开发者常见问题和我们收到留言中经常出现 Android Oreo 问题了。当然,如果您在使用期间遇到任何问题,或者您用户问出来什么值得注意问题,也请随时向我们反馈。

1.9K70

【详细】Android入门到放弃篇-YES OR NO-》各种UI组件,布局管理器,单元Activity

标题图 问:达叔,你放弃了吗? 答:不,放弃是不可能,丢了Android,你会心疼吗?如果别人把你丢掉,你是痛苦呢?还是痛苦呢?~ 引导语 有人说,爱上一个人是痛苦,有人说,喜欢一个人是幸福。...你面前热水,如果时间长了也会变凉。想拼搏那就去做,想休息一下那就静下心来。 问:哥,那今日讲什么?...AndroidManifest配置文件: 它包含Android应用全局配置文件,包括应用包名,应用程序图标,应用程序采用主题,与用户交互工具,权限等信息。...停止状态: activity被完全覆盖,保持所有状态和成员信息,如点击Home效果,为暂停,当重新打开,该活动再次获得焦点。 非活动状态: activity被销毁,即退出应用。...activity创建,启动,关闭: 一:继承AppCompatActivity类或Activity类,重写onCreate()方法; 二:启动startActivity()方法来启动需要activity

1.1K20

Android面试题大全

跨进程通讯几种方式 Android中为什么子线程不能更新UI 如果不做这个校验,是不是也可以正常在子线程更新UI 但是google为什么要这样去设计呢 ViewRootImp是在onActivityCreated...在 android stdio会自动生成, eclipse 需要自己手动添加 定义与作用: Activity 中文意思是 活动,代表手机屏幕一屏,或是平板电脑中一个窗口,提供了和用户交互可视化界面...一个活动开始,代表 Activity 组件启动活动 结束,代表一个 Activity 生命周期结束。...为什么还需要开启消息循坏 // 保证上述条件1成立,不就可以避免checkThread时候抛出异常了吗?为什么还需要开启消息循坏?...那么如何利用系统漏洞呢,大致实现思路和代码如下: 思路一:API < 18,启动前台Service时直接传入new Notification(); 思路二:API >= 18,同时启动两个id相同前台

1.3K50

探究 | App Startup真的能减少启动耗时吗

所以我们才无需单独对Facebooksdk进行初始化。 虽然更方便了,但是这种做法启动优化带来什么好处吗?...如果是线下app,我们可以采用视频录制方法准确测量启动时间,也就是通过判定视频每一帧截图来知晓什么时候app启动了,然后统计这个启动时间。...手机坏了吗?怎么跟预想不一样啊,结果耗时还增加了? 按道理来说原来两个ContentProvider,用了App startup,集成为一个,耗时不应该减少么。...但是如果我们其他需求,比如上述说到延迟初始化,异步初始化等问题,我们就要关闭部分库或者所有库App Startup功能,然后自己单独对任务进行初始化工作,比如通过启动器来处理各个初始化任务关系...,一起学习小伙伴可以关注下公众号——码上积木❤️❤️ 每日三问知识点/面试题,积少成多。

1.6K51

Ulauncher:一个超级实用 Linux 应用启动器 | Linux 中国

应用启动器可以让你快速访问或打开一个应用,而无需在应用菜单图标上徘徊。 在默认情况下,发现 Pop!_OS 应用启动器超级方便。但是,并不是每个 Linux 发行版都提供开箱即用应用启动器。...幸运是,一个你可以在大多数流行发行版中添加应用启动器方案。 Ulauncher:开源应用启动器 Ulauncher 是一个使用 Python 还有 GTK+ 构建快速应用启动器。...它提供了相当数量自定义和控制选项来进行调整。总的来说,你可以调整它行为和体验以适应你喜好。 让来说一下你可以期待它一些功能。...image.png 一些默认快捷键,如 g XYZ,其中 “XYZ” 是你想在谷歌中搜索搜索词。...你试过 Ulauncher了吗?欢迎你就如何帮助你快速完成工作分享你想法。

1.3K20

Java热门框架【SpringBoot】快速入门教程

SpringBoot作为当下Java开发最常用技术框架,相信你也一定听过很多次了。 那么到底什么是SpringBoot?SpringBoot又有什么用呢?...和所有框架一样,Spring实用,与此同时它要求回报也不少。 除此之外,项目的依赖管理也是一件耗时耗力事情。...发展到现在,Spring Boot已经具有很大生态圈,各种主流技术已经都提供了Spring Boot启动器启动器?...如果是Spring自己封装启动器artifact id名字满足:spring-boot-starter-xxxx,如果是第三方公司提供启动满足:xxxx-spring-boot-starter。...现在你知道什么是SpringBoot了吗?赶快掌握吧!动力节点springboot视频中还有更多内容~ https://www.bilibili.com/video/BV1XQ4y1m7ex

35920

Android 进阶2:Activity Task 与启动模式

Android 中 Task 是什么 我们知道,一个应用中可能有多个 Activity,而这些 Activity 被以栈形式管理。...应用中 Task 名默认为包名,我们可以使用 taskAffinity 标签在 AndroidManifest.xml 中指定某个 Activity 要属于 Task 名称: <activity...当用户触摸应用启动器图标(或主屏幕上快捷方式)时,该应用 Task 将出现在前台。...如果用户稍后通过选择开始任务启动器图标来恢复任务,则该 Task 将出现在前台并恢复执行堆栈顶部 Activity。 注意: 后台可以同时运行多个任务。...和 singleTask 还是一定区别的 如果当前 Task 已经启动 Activity,就不会直接创建新,但是还要分下面两种情况 如果这个 Activity 启动模式是 standard

1.4K50

Activity启动模式

在Android程序中,应用程序通过活动栈来管理Activity,活动栈中有多少个Activity对象,我们在退出程序时候就要按多少下返回键(即要将活动栈中所有Activity出栈),但是这样的话难免会有活动栈中存在相同...首先,我们Activity对象在我们在Android工程AndroidManifest.xml配置文件中注册,之后才可以被我们程序使用,而在我们注册Activity时,一个launchMode属性是可以赋值...办法就是将我们Androidmanifest.xml文件中MainActivitylaunchMode属性改一下,变成singleTop,什么变化呢,我们仍然来做个实验: 将这个Android工程新增一个...然后我们再点击一下“启动SecondActivity”按钮,我们会发现LogCat信息并没有什么变化,此时也只需要点击两次BACK键就能退出程序。...最后总结一下4种启动模式: standard:不管要启动Activity是否已经存在与活动栈,都会创建一个新Activity对象处于活动栈栈顶。

58710

Spring Boot最常见面试题

从本质上讲,虽然Spring是不受欢迎Spring Boot对平台和库了自己看法,让我们快速入门。...使用启动父项目很方便,并不总是可行。例如,如果我们公司要求所有项目都从标准POM继承,我们就不能依赖Spring Boot启动父级。...这种命名模式使您可以轻松找到启动器,尤其是在使用支持按名称搜索依赖关系IDE时。 在撰写本文时,我们超过50个启动器。...九、哪些可能外部配置源? Spring Boot支持外部配置,允许我们在各种环境中运行相同应用程序。我们可以使用属性文件,YAML文件,环境变量,系统属性和命令行选项参数来指定配置属性。...这些文件与非特定属性文件位于相同位置,并且优先于非特定属性文件。 十、Spring Boot支持轻松绑定是什么意思? Spring Boot中轻松绑定适用于配置属性类型安全绑定。

1.4K30

苏州 开源自主 dotnet 生态

,需要有不同启动器。...启动器作用就是让 dotnet 运行时跑起来,启动器需要对不同平台构建不同版本,作为应用入口。在启动了运行时之后,将进行 JIT 解析执行 IL 内容,执行应用逻辑。...为什么需要这样一个启动器呢,其中一个原因是为了更好跨平台。...每个平台都有自己定义可执行文件格式,为了让 dotnet 更好适配性(不要去碰具体平台意思),咱需要在具体平台上,需要有不同启动器。...欢迎转载、使用、重新发布,务必保留文章署名林德熙(包含链接: https://blog.lindexi.com ),不得用于商业目的,基于本文修改后作品务必以相同许可发布

94420

UWP 打包 win32 应用 添加防火墙例外

WPF 程序是 WPF 程序加上 asp dotnet core 程序,这是将 asp dotnet core 作为客户端使用,主要作用是 ipc 也就是进程通讯,用这个方法没有什么好处,下次小伙伴要用...UWP 打包 win32 程序都在另一个启动器项目里面运行,这样就能做到我不需要改动原有的 win32 项目的代码,可以给任意第一个win32应用打包上架到应用商店 方法是创建一个 net461...这个项目需要右击应用程序,添加启动器引用 如果是一个不需要添加防火墙例外应用,这样做就完成了 需要添加防火墙例外需要右击 Package.appxmanifest 查看代码,添加下面代码...JadallhearfairBarwalbegear\Package.appxmanifest 文件 上面代码细节是需要放在 Extensions 里面,而 Executable 路径是放在启动器文件夹里面...欢迎转载、使用、重新发布,务必保留文章署名林德熙(包含链接: https://blog.lindexi.com ),不得用于商业目的,基于本文修改后作品务必以相同许可发布。

87110
领券