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

速读原著-Android应用开发入门教程(Android应用程序概念性描述)

(2)广播接收器(BroadcastReceiver) 广播接收器用于让应用程序对一个外部事件做出响应。例如:电话呼入事件、数据网络可用通知或者到了晚上进行通知。...转入后台,onStop()是否被调用取决于活动是否被完全覆盖,活动有透明部分时,转入后台活动依然“可见”,其他情况下(较多数情况)活动均进入不可见状态(被完全覆盖)。...如果系统缺少内存,也会杀死(kill)后台活动,其中优先杀死不可见活动,可见活动一般不会被杀死。 2....广播接收器生命周期 广播接收器有一个单一回调方法 onReceive(),当广播消息到达接收器,Android 将调用这个方法,并传递给包含在这个消息 Intent 对象。...广播接收器只有在这个方法执行过程处于活动状态,当 onReceive()返回后,广播接收器将不再处于活动状态。广播接收器功能类似于一个回调函数,只是单次运行时处于活动状态。

97410

Android四大组件小结

service分为两种: (a)started(启动):当应用程序组件(如activity)调用startService()方法启动服务,服务处于started状态。...(b)bound(绑定):当应用程序组件调用bindService()方法绑定到服务,服务处于bound状态。...也就是说哪怕app本身启动,该app订阅广播触发也会对它起作用。...需要注意AndroidManifest文件中进行配置广播接收者会随系统启动而一直处于活跃状态,只要接收到感兴趣广播就会触发(即使程序运行)。...栈中保存其实是对象,栈Activity永远不会重排,只会压入弹出。 (b)任务所有activity是作为一个整体进行移动。整个任务(即activity栈)可以移到前台,退至后台

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

android四大组件_android sdk是什么

service分为两种: (a)started(启动):当应用程序组件(如activity)调用startService()方法启动服务,服务处于started状态。...(b)bound(绑定):当应用程序组件调用bindService()方法绑定到服务,服务处于bound状态。...静态注册无需担忧广播接收器是否被关闭,只要设备是开启状态,广播接收器也是打开着。也就是说哪怕app本身启动,该app订阅广播触发也会对它起作用。...需要注意AndroidManifest文件中进行配置广播接收者会随系统启动而一直处于活跃状态,只要接收到感兴趣广播就会触发(即使程序运行)。...栈中保存其实是对象,栈Activity永远不会重排,只会压入弹出。 (b)任务所有activity是作为一个整体进行移动。整个任务(即activity栈)可以移到前台,退至后台

95420

Android应用实现安装后自启动方法

从Andriod3.1开始,系统包管理服务会一直追踪处于停滞状态app,并提供了控制它们从后台进程其他应用程序启动方法。 注意:应用程序停止状态不同于activity(活动)停止状态。...一个后台service服务app应用程序可以 通过向广播Intent对象添加FLAG_INCLUDE_STOPPED_PACKAGES标志,覆盖重写这个行为,使得该广播可以激活处于停止状态应用程序...,因为该app运行过) 2、app项目中使用静态注册广播(因为动态广播是app运行后才可以接受到) 3、app曾经运行过(即不处于stopped状态) Android5.1真机上测试: 初次安装...覆盖安装运行过app,不会触发广播 安装完运行app后,退出App(点击返回键、并从recent任务移除,此时设置-应用查看,app仍未处于stop状态)。覆盖安装后,app成功自动运行。...(此时设置-应用查看,app处于stop状态) 所以,只要在App运行时,直接覆盖安装apk,是可以用广播接收器实现安装完后自启动

4.1K31

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

一般来说,我们有下列几种方法来为应用程序创建入口点: 1、通过处理MAIN和LAUNCHER类型Intent启动器Activity; 2、后台运行服务; 3、广播接收器,当系统发送应用程序期望广播调用...SpyNote通过注册一个名为“RestartSensor”广播接收器(一个允许我们注册系统应用程序事件Android组件)来实现此功能。...此广播接收器是唯一,因为系统上没有其他接收器能够处理SpyNote在即将关闭生成特定广播。 每当SpyNote服务即将关闭,就会调用该服务onDestroy方法。...接收到该广播后,广播处理程序(它是先前注册唯一接收器)将重新启动服务: 下图是上述流程代码实现部分,SpyNote首先在AndroidManifest.xml文件声明了一个广播接收器。...当目标用户接到来电,电话状态会发生变化,广播接收器也会被触发。

25710

Android四大组件详解

service分为两种: (a)started(启动):当应用程序组件(如activity)调用startService()方法启动服务,服务处于started状态。...(b)bound(绑定):当应用程序组件调用bindService()方法绑定到服务,服务处于bound状态。...Service组件通常用于为其他组件提供后台服务监控其他组件运行状态。...其他应用可以通过ContentResolver类从该内容提供者获取存入数据。 (2)只有需要在多个应用程序间共享数据是才需要内容提供者。...静态注册无需担忧广播接收器是否被关闭,只要设备是开启状态,广播接收器也是打开着。也就是说哪怕app本身启动,该app订阅广播触发也会对它起作用。

6.4K10

Android O 广播限制

这些状态通常是由于广播引起:某些广播广播发送相对频繁,许多应用程序正在通过清单进行监听(因此需要启动以接收它),但是没有足够RAM来保留所有状态这些应用程序进程缓存中进行处理,因此,每次发送广播...应用可以继续它们清单中注册显式广播。 应用可以在运行时使用 Context.registerReceiver() 为任意广播(不管是隐式还是显式)注册接收器。...之前,应用已经清单为 ACTION_POWER_CONNECTED 注册了一个接收器;当应用接收到该广播,它会检查清理是否必要。...为了迁移到 Android 8.0 更高版本,应用将该接收器从其清单移除。 应用将清理作业安排在设备处于空闲状态和充电时运行。 例外隐式广播 很多隐式广播当前已不受此限制所限。...这种方法允许应用安排其活跃运行时执行工作,不过仍能够使系统可以不影响用户体验情况下安排这些作业。

3.7K31

APP测试面试题汇总

BroadcastReceiver广播接收器:应用可以使用它对外部事件进行过滤只对感兴趣外部事件(如当电话呼入时,或者数据网络可用时)进行接收并做出响应。广播接收器没有用户界面。...只有需要在多个应用程序间共享数据才需要内容提供者。例如:通讯录数据被多个应用程序使用,且必须存储一个内容提供者。它好处:统一数据访问方式。...服务运行不依赖于任何用户界面,即使程序被切换到后台,或者用户打开了另一个应用程序,服务仍然能够保持正常运行,不过服务并不是运行在一个独立进程当中,而是依赖于创建服务所在应用程序进程。...暂停(Paused):当Activity失去焦点被一个新非全面屏Activity,被一个透明Activity放置栈顶,Activity就转化为Paused状态。...这种非正常情况下,系统杀死或者结束之前会调用onSaveInstance()方法来保存信息,同时,当Activity被移动到前台,重新启动该Activity并调用onRestoreInstance(

1.7K31

Android面试题(四大组件篇)

1.当app处于后台被系统回收,app进程被杀死了,Activity 也被回收了,而apptask和activity栈以及相应intent和数据会被系统保存起来。...运行时临时数据应存放在SharedPreference、临时文件数据库 3 Activity之间传数据应该用系统提供intent机制。 Q:说下Activity四种启动模式?...可以直接调用到Service方法,如果要主动通知Activity,我们可以利用回调方法 Service向Activity发送消息,可以使用广播,当然Activity要注册相应接收器。...静态注册无需担忧广播接收器是否被关闭,只要设备是开启状态,广播接收器也是打开着。也就是说哪怕app本身启动,该app订阅广播触发也会对它起作用。...(1)android平台提供了ContentProvider使一个应用程序指定数据集提供给其他应用程序。其他应用可以通过ContentResolver类从该内容提供者获取存入数据。

86720

Android基础_1 四大基本组件介绍与生命周期

)发送,该方法第2个参数决定该广播级别,级别数值是 -1000 到 1000 之间 , 值越大 , 发送优先级越高;广播接收者接收广播级别级别(可通过intentfilterpriority...,后者只能被一个(Activityservice)调用 监听广播Intent步骤: 1>             写一个继承BroadCastReceiver类,重写onReceive() 方法,广播接收器仅在它执行这个方法处于活跃状态...也就是说哪怕app本身启动,该app订阅广播触发也会对它起作用 系统常见广播Intent,如开机启动、电池电量变化、时间改变等广播 Service 服务: 一个Service 是一段长生命周期...需要注意AndroidManifest文件中进行配置广播接收者会随系统启动而一直处于活跃状态,只要接收到感兴趣广播就会触发(即使程序运行) AndroidManifest文件中进行注册格式如下...任务所有activity 是作为一个整体进行移动。整个任务(即activity 栈)可以移到前台,退至后台

1.4K30

Android14 适配之——现有 App 安装到 Android14 手机上需要注意些什么?

动态广播当 App 进入缓存态将会入队保存 Android14 ,我们使用 Context 上下文注册动态广播接收器,可以 App 进入缓存状态,将已发送还未接收广播放入到一个队列中保存...而在 Manifest 文件中注册静态广播接收器,则不能进入队列,它们会在 App 从缓存状态中被移除销毁,进行广播传递。 “什么是缓存状态下 App?...试了下在 Android14 设备上 A App 调用此 API 去杀死 B App 后台进程,确实没有任何作用;但如果是 Android14 以下设备上调用,确实可以杀死 B App 后台进程... Android14 及以后版本,如果存储媒体文件应用包名不是始终对其他应用程序可见,则在查询媒体库,所有者包名将被隐藏替换为匿名值。...以下情况,此类通知仍不可关闭: 1)当手机处于锁定状态; 2)如果用户选择全部清除通知操作(有助于防止意外关闭); 此外,下列几种情况并没有变更: 1)使用 CallStyle 创建通知,即来电通知样式

2.1K10

Android四大组件详解

需要注意AndroidManifest文件中进行配置广播接收者会随系统启动而一直处于活跃状态,只要接收到感兴趣广播就会触发(即使程序运行)。...注意: activity 结束前,移除广播接收器。 ) 静态注册无需担忧广播接收者是否被关闭,只要设备是开启状态,广播接收者也是打开着。...也就是说哪怕 app 本身启动,该 app 订阅广播触发也会对它起作用。( 静态注册是常驻型,也就是说当应用程序关闭后,如果有信息广播来,程序也会被系统调用自动运行。...广播传递过程,先接收到广播接收者可以对广播进行拦截篡改。...A 得到广播后,可以往广播里存入数据,当广播传给 B ,B可以从广播得到 A 存入数据 总结: 当广播为有序广播: 优先级高先接收 同优先级广播接收器,动态优先于静态 同优先级同类广播接收器

3.4K20

深度了解Android 7.0 ,你准备好了吗?

五、随时随地低电耗模式 Android N ,低电耗模式又前进了一步,随时随地可以省电。只要屏幕关闭了一段时间,且设备插入电源,低电耗模式就会对应用使用熟悉 CPU 和网络限制。...此项变更很有必要,因为隐式广播会在后台频繁启动已注册侦听这些广播应用,删除这些广播可以显著提升设备性能和用户体验。 移动设备会经历频繁连接变更,例如在 Wi-Fi 和移动数据之间切换。...目前,可以通过应用清单文件中注册一个接收器来侦听隐式 CONNECTIVITY_ACTION广播,让应用能够监控这些变更。...未来 Android 版本还可能会弃用其他隐式广播以及绑定后台服务。有鉴于此,应避免依赖清单文件声明接收器来侦听隐式广播删除此依赖关系,以及避免删除对后台服务依赖关系。...Android 框架提供多种解决方案来降低这些隐式广播后台服务必要性。

2.8K10

Broadcasts详解「建议收藏」

广播某个特定事件发生被发送,例如,当各种系统事件发生(如系统启动设备开始充电),Android系统就会发送广播。...静态注册广播接收器 如果你manifest中注册一个广播接收器,且应用程序没有运行,系统就会在广播发送启动你应用程序。...如果Activity处于pause状态你不想接收广播,那么你需要在onResume()中注册接收器onPause()中注销接收器,以防止异常多次注册,这也可以减少不必要系统开销。...为了避免这种情况,如果你想用更多时间在后台线程处理广播,那么你应该调用goAsync()JobService来让系统知道进程要继续执行一些工作。...如果你想用更多时间在后台线程处理广播,请用下面方法来完成: a、 onReceive()调用goAsync(),并且传入BroadcastReceiver.PendingResult。

75510

Android面试题大全

需要注意AndroidManifest文件中进行配置广播接收者会随系统启动而一直处于活跃状态,只要接收到感兴趣广播就会触发(即使程序运行)。...也就是说哪怕 app 本身启动,该 app 订阅广播触发也会对它起作用。( 静态注册是常驻型,也就是说当应用程序关闭后,如果有信息广播来,程序也会被系统调用自动运行。...广播传递过程,先接收到广播接收者可以对广播进行拦截篡改。...A 得到广播后,可以往广播里存入数据,当广播传给 B ,B可以从广播得到 A 存入数据 总结: 当广播为有序广播: 优先级高先接收 同优先级广播接收器,动态优先于静态 同优先级同类广播接收器...当广播为普通广播: 无视优先级,动态广播接收器优先于静态广播接收器 同优先级同类广播接收器,静态:先扫描优先于后扫描,动态:先注册优先于后注册

1.3K50

咦,Oreo怎么收不到广播了?

动态注册:也称为运行时注册,也就是Service或者Activity组件,通过Context.registerReceiver()注册广播接收器。...通过指定Intent组件名称来实现,它一般用在知道目标组件名称前提下,去调用以下方法。意图明确,指定了要激活组件是哪个组件,一般是相同应用程序内部实现。...Android8.0后台执行限制 注意是针对targetSDK >= 26应用,也就是说,targetSDK小于26的话,暂不受影响 Oreo,为了进一步提升用户体验,进一步节省功耗,对应用在后台运行时可以执行操作又进一步施加了限制...后台服务限制:处于空闲状态,限制应用后台服务。...动态通过调用 Context.registerReceiver()注册广播接收器而不是清单声明接收器。 使用JobScheduler,这个网上找一下,有很多教程,就不细说了。

1.9K40

深度了解Android 7.0 ,你准备好了吗?

五 随时随地低电耗模式  Android N ,低电耗模式又前进了一步,随时随地可以省电。只要屏幕关闭了一段时间,且设备插入电源,低电耗模式就会对应用使用熟悉 CPU 和网络限制。...此项变更很有必要,因为隐式广播会在后台频繁启动已注册侦听这些广播应用,删除这些广播可以显著提升设备性能和用户体验。 移动设备会经历频繁连接变更,例如在 Wi-Fi 和移动数据之间切换。...目前,可以通过应用清单文件中注册一个接收器来侦听隐式 CONNECTIVITY_ACTION广播,让应用能够监控这些变更。...未来 Android 版本还可能会弃用其他隐式广播以及绑定后台服务。有鉴于此,应避免依赖清单文件声明接收器来侦听隐式广播删除此依赖关系,以及避免删除对后台服务依赖关系。...Android 框架提供多种解决方案来降低这些隐式广播后台服务必要性。

1.4K30

移动APP测试基础培训

等权限,将相机权限关闭后,app能够正常启动,启动调用相机时,是否能正常弹框提示 6、交叉事件测试【中断测试】 1)操作软件来电话、短信、电量不足提示等外部事件 2)软件运行时,由前台切换到后台,再切回前台后...④Android系统几种场景状态: a.空闲状态: 指打开应用后,点击home键让应用后台运行,此时应用处于状态叫做空闲; b.中等规格和满规格状态:中等规格和满规格指的是对应用操作时间间隔长短不一...ANR全称是application not responding,根据它意思我们就能看出来是应用程序响应,就像是我们电脑上碰到 程序响应,一般电脑出现这种情况,可能是由于我们打开了很多应用程序...: 1、只有主线程才会产生ANR,主线程就是UI线程; 2、必须发生某些输入事件特定操作,比如按键触屏等输入事件,BroadcastReceiverService各个生命周期调用函数; 3、上述事件响应超时...,不同context规定上限时间不同 ANR产生环境: 1、5秒内无法对输入事件(按键及触摸)做出响应 2、广播接收器无法10秒内结束运行 具备了以上三个条件,那么加上这两个环境,就会产生ANR

1.3K20

1.Android-入门之系统架构介绍

通知管理器(Notification Manager): 使应用可以系统状态栏显示通知消息 XMPP服务 : Google在线即时交流软件中一个通用进程,提供后台推送服务 而四大组件又分为:...: 用于后台完成用户操作,主要用于周期性后台监控和后台服务,比如在后台下载东西 BroadCast Receiver广播接收器 : 用来接收各处APP发出广播,但是多数广播是系统发起.比如来电来信等...Android应用程序框架来调用 5....ART优点:安装应用程序时会进行一次 AOT(ahead of time compilation, 预编译),将字节码编译成机器码并存储本地,这样APP每次运行时就不需要执行编译了,APP运行效率大大提升...ART缺点: 应用程序安装时间变长,并且安装后存储空间占用多一些(存储有机器码原因) 6.linux内核 用来运行应用程序,并包含各种驱动,向应用层提供调用

62520

Android 13 适配指南

; 发送给你应用其他组件 intent; 由系统发送 intent; 由具有根级特权用户发送 intent; 更安全地导出上下文注册接收器 为了帮助提高运行时接收器安全性,Android...13 允许你指定 App 特定广播接收器是否应被导出以及是否对设备上其他应用可见,此变更是 Android 12 更安全组件 延续; 以 Android 13(33) 更高版本为目标平台应用...,必须为每个广播接收器指定 RECEIVER_EXPORTED RECEIVER_NOT_EXPORTED,否则当 App 尝试注册广播接收器,系统会抛出 SecurityException //...应用程序可以触发撤销授予调用 API 一个多个运行时权限,不需要访问特定运行时权限控制 API 应用程序可以自行撤销这些权限,这样用户就可以确保这些应用程序不会在不知情情况下使用这些API。...Android 13 增加了剪贴板自动清除功能,此功能在默认情况下处于禁用状态,经过设定时间后,将自动从全局剪贴板清除主剪辑, 默认情况下经过3600000毫秒(60分钟)后,剪贴板将被清除。

4.8K31
领券