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

START_STICKY,前台Android服务在没有通知的情况下消失

START_STICKY 是一个 Android 服务的状态,表明服务正在运行,但可能没有处于活动状态(即没有在屏幕上显示)。在这种情况下,服务可能由于各种原因(如资源限制、进程被杀等)被关闭,但系统可能仍然认为服务正在运行,因此会在特定条件下重新启动服务。

应用场景

  • 游戏后台服务:游戏后台服务通常使用 START_STICKY,因为它们需要在背景中运行,但可能不需要随时处于活动状态。
  • 语音服务:在没有活动语音连接时,语音服务应用可以保持 START_STICKY,以便在用户重新连接时迅速启动。
  • 推送服务:保持 START_STICKY 可以确保在收到推送通知时,服务能够立即处理并显示内容。

推荐的腾讯云相关产品

  1. 腾讯云 云服务器(CVM):提供可靠、弹性的云计算服务,助您轻松搭建应用环境。
  2. 腾讯云 数据库(TencentDB):提供多种类型的数据库服务,包括关系型、非关系型、时序等,支持高可用、高性能、高扩展的数据库服务。
  3. 腾讯云 内容分发网络(CDN):提供快速、稳定、安全的内容分发服务,提高网站访问速度。
  4. 腾讯云 云存储(COS):提供可靠、高速、低时延的云存储服务,适用于存储和备份等业务需求。
  5. 腾讯云 人工智能(AI):提供语音识别、图像识别、自然语言处理等领域的人工智能产品和服务。

产品介绍链接地址

  1. 云服务器(CVM):立即购买
  2. 数据库(TencentDB):立即购买
  3. 内容分发网络(CDN):立即购买
  4. 云存储(COS):立即购买
  5. 人工智能(AI):立即购买

关于AWS、Azure、阿里云、华为云、天翼云、GoDaddy、Namecheap、Google等云计算品牌的介绍

这些云计算品牌商都是全球知名的企业,它们提供了各具特色的云计算产品和服务。例如,AWS提供了广泛的云服务,包括计算、存储、数据库、分析、机器学习等;Azure提供了各种云计算服务,包括虚拟机、数据库、CDN等;阿里云提供了包括云服务器、云数据库、云存储、人工智能等在内的众多服务;华为云提供了包括云服务器、云数据库、云存储、人工智能等在内的各种云服务;天翼云提供了包括云服务器、云数据库、云存储、CDN等在内的各种云服务;GoDaddy和Namecheap等品牌商则提供了包括域名注册、主机托管、SSL证书、网站建设等在内的各种服务;Google Cloud Platform(GCP)则提供了包括虚拟机、数据库、CDN、AI等在内的各种云计算服务。

在选择云计算品牌商时,您可以根据自身需求、应用场景和预算等因素进行综合考虑,选择最适合您的云计算品牌商。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

Android通知前台服务实现

一、前台服务简单介绍 前台服务是那些被认为用户知道且系统内存不足时候不允许系统杀死服务。...前台服务必须给状态栏提供一个通知,它被放到正在运行(Ongoing)标题之下——这就意味着通知只有在这个服务被终止或从前台主动移除通知后才能被解除。...服务创建完毕,接下来就可以进行服务启动了,启动前不要忘记在清单文件中进行前台服务权限添加: <uses-permission android:name="android.permission.FOREGROUND_SERVICE...); stopService(mForegroundService); 关于前台服务介绍及使用就到这里了,相关使用已上传至Github开发记录,欢迎点击查阅及Star,我也会继续补充其它有用知识及例子项目上...到此这篇关于Android通知前台服务实现文章就介绍到这了,更多相关Android 通知前台内容请搜索ZaLou.Cn以前文章或继续浏览下面的相关文章希望大家以后多多支持ZaLou.Cn!

4.9K31

android service原理及免杀(3)

如何免死 3.1 onStartCommand方法中,返回START_STICKY StartCommand()几个常量: START_STICKY 系统重新创建服务并且调用onStartCommand...3.2提升Service优先级 前台服务是被认为用于已知正在运行服务,当系统需要释放内存时不会优先杀掉该进程。前台进程必须发一个notification状态栏中显示,知道进程被杀死。...因为前台服务一直消耗一部分资源,但不像一般服务那样会在需要时候被杀掉,所以为了节约资源,保护电池寿命,一定要在建前台服务时候发送notification,提示用户。...,参数123456就是这个通知唯一id,只要不为0即可。...但是有些情况下,发送广播消息队列中排靠后,就有可能服务没有接收到广播就销毁了(只是猜想)。所以为了能让这个机制完美运行,可以开启两个服务,相互监听,相互启动。

73420

Android 进程保活】应用进程拉活 ( 系统 Service 机制拉活 | Service 组件 onStartCommand 方法分析 | 源码资源 )

< Build.VERSION_CODES.ECLAIR , 即手机 API Level 版本号是否小于 5 , 现在肯定没有版本号小于 5 手机 , 该值默认是 false ; public abstract...服务进程被杀掉 , 系统会保留 Service 状态 , 但是不保留启动服务 Intent ; 之后系统会尝试重新创建该 Service 服务 ; ( 更详细信息查看下方源码注释 ) /...-- 用于提权前台进程 --> <service android:name=".foreground_service.ForegroundService"...-- 用于提权前台进程, 关闭通知操作 --> <service android:name=".foreground_service.CancelNotificationService...通过前台 Service 提升应用权限 // 启动普通 Service , 但是该 Service onCreate 方法中执行了 startForeground

1.8K30

Android高频面试专题 - 基础篇(三)Service

答案肯定是不能,虽然Service定位是在后台执行长时间操作,但是Service默认也是主线程执行,前面ANR讲过,前台服务执行超过20s就会ANR,平时你也许直接Service里面干过不算太久耗时操作...START_STICKY_COMPATIBILITY=0: START_STICKY 兼容版本,但不保证服务被 kill 后一定能重启。...7、onRebind()什么时候被调用 首先前提是onUnbind()方法返回true,此前该服务所有的绑定已经unBind(), 然后客户端已连接到该服务时就会调用。 8、前台服务是什么?...如何启动 前台服务是用户可感知前台服务与Notification共存亡,启动前台服务通过startForeground(int id, Notification notification)传入一个通知...,并且服务停止前,此通知无法移除。

71521

2018年Android保活方案效果统计

可以更换思路,做APP启动后保活(监听广播启动保活前台服务) 2、定时器、JobScheduler:假如应用被系统杀死,那么定时器则失效,此方案失效。...:常驻通知栏(可通过启动另外一个服务关闭Notification,不对oom_adj值有影响)、使用”1像素“Activity覆盖getWindow()view上、循环播放无声音频(黑科技,7.0...结论:此方案没有起作用 结论:除了华为此方案无效以及未更改底层厂商不起作用外(START_STICKY字段就可以保持Service不被杀)。...结论:此方案没有起作用 结论:此方案无效果 3、故意在后台播放无声音乐(基于onStartCommand() return START_STICKY) 1、原生5.0、5.1:锁屏后3s服务被干掉然后重启...23分钟 结论:高版本情况下可以使用弹出通知栏、双进程、无声音乐提高后台服务保活概率 实现具体过程 一、双进程实现方案 使用AIDL绑定方式新建2个Service优先级(防止服务同时被系统杀死)不一样守护进程互相拉起对方

2.2K50

Android实现进程保活方案解析

如果是负数,表示该进程为系统进程,肯定不会被杀掉, 如果是0,表示是前台进程,即当前用户正在操作进程,除非万不得已,也不会被杀掉; 如果是1,表示是可见进程,通常表示有一个前台服务,会在通知栏有一个划不掉通知...白色保活 用startForeground()启动前台服务,这是官方提供后台保活方式,不足就是通知栏会常驻一条通知,像360状态栏。...3、实现过程: 1)、用startForeground()启动前台服务 前台Service,使用startForeground这个Service尽量要轻,不要占用过多系统资源,否则系统资源紧张时,照样会将其杀死...,此时会出现两个前台服务,但通知管理器里只有一个关联通知。...这时我们在其中一个服务中调用 stopForeground(true),这个服务前台状态会被取消,同时状态栏通知也被移除。另外一个服务没有受到影响,还是前台服务状态,但是此时,状态栏通知已经没了!

8.7K30

Android从零单排系列三十七】《Android四大组件——Service》

下面是关于Android Service概要: 服务类型: 前台服务(Foreground Service):可显示通知,被认为是用户正在主动使用部分,如音乐播放器。...绑定服务可以提供API给其他组件调用,通过IBinder进行通信。 注意事项: 长时间运行服务应考虑使用前台服务,提供可见通知,避免被系统杀死。...同时需要提供一个通知作为前台服务标识,确保服务不容易被系统杀死。 IntentService: 如果需要执行异步任务,可以使用IntentService类。...notification(通知):前台服务需要提供一个通知作为标识,通过设置notification属性来定义通知内容和样式。...startForeground():将服务设置为前台服务,并传入一个通知作为标识。 stopForeground():将前台服务转为后台服务

20410

Android开发笔记(四十一)Service生命周期

与生命周期有关方法 onCreate : 创建服务 onStart : 开始服务Android2.0以下版本使用 onStartCommand : 开始服务Android2.0及以上版本使用...该函数返回值为整型,一般取值START_STICKY,具体说明如下: 1、START_STICKY:粘性服务。如果服务进程被杀掉,保留服务状态为开始状态,但不保留传送Intent对象。...日志如下: 01-07 10:48:03.109: D/FirstService(5486): onRebind 日志观察结果 从上面日志可以看出 1、启动服务时,Android2.0及以上版本只调用...startForeground便是这样一个方法,它在通知栏挂上服务一条信息,从而让服务前台运行,就不会被系统杀掉。...notify); return START_STICKY; } 异步服务IntentService Service虽然是后台服务,却跟Activity一样主线程中,如果Service

44640

Android入门教程 | 四大组件之Service(前台服务,后台服务

例如,服务可在后台处理网络事务、播放音乐,执行文件 I/O 或与内容提供程序进行交互。 前台服务服务执行一些用户能注意到操作。例如,音频应用会使用前台服务来播放音频曲目。前台服务必须显示通知。...即使用户停止与应用交互,前台服务仍会继续运行。 启动前台服务 前台服务可以给用户提供界面上操作。 每个前台服务都必须要在通知栏显示一个通知(notification)。...用户可以感知到app前台服务正在运行。 这个通知(notification)默认是不能移除服务停止后,通知会被系统移除。...停止前台服务 Service中调用stopForeground(boolean)方法,能停止前台,但是不退出整个服务。 这个boolean表示是否取消掉前台服务通知。false表示保留通知。...例如在Service中调用 stopForeground(false) 服务变成了后台服务,并没有退出。此时对应通知可以滑动取消掉。

4.7K30

全面盘点当前Android后台保活方案真实运行效果(截止2019年前)1、引言2、先总结一下,Android端APP为何要搞保活黑科技?3、相关文章4、常见Android端保活黑科技方案盘点5、汇

1、引言 对于IM应用和消息推送服务开发者来说,Android机型上后台保活是个相当头疼问题。 老板一句:“为什么微信、QQ能收到消息,而你写APP却不行?”...题外话:实际上,对于后台消息推送能力,Android原版系统早就内置了系统级推送服务(跟iOS上APNs服务是一个东西),它就是GCM服务(现在升级为FCM了),但众所周之原因,谷哥服务国内都是用不了...:比如今日头条系、阿里系); 2)降低oom_adj值:常驻通知栏(可通过启动另外一个服务关闭Notification,不对oom_adj值有影响)、使用”1像素“Activity覆盖getWindow...【5】混合使用效果,并且通知栏弹出通知: 1)原生5.0、5.1:任务管理器中干掉APP,服务会在周期时间后重新启动。...▲ 结论:高版本情况下可以使用弹出通知栏、双进程、无声音乐提高后台服务保活概率。

1.8K20

全面盘点当前Android后台保活方案真实运行效果(截止2019年前)

题外话:实际上,对于后台消息推送能力,Android原版系统早就内置了系统级推送服务(跟iOS上APNs服务是一个东西),它就是GCM服务(现在升级为FCM了),但众所周之原因,谷哥服务国内都是用不了...:比如今日头条系、阿里系); 2)降低oom_adj值:常驻通知栏(可通过启动另外一个服务关闭Notification,不对oom_adj值有影响)、使用”1像素“Activity覆盖getWindow...不清理情况下,不加守护进程方案与加守护进程方案Service会一直存活,12分钟左右closed。结论:此方案没有起作用。...【5】混合使用效果,并且通知栏弹出通知: 1)原生5.0、5.1:任务管理器中干掉APP,服务会在周期时间后重新启动。...▲ 结论:高版本情况下可以使用弹出通知栏、双进程、无声音乐提高后台服务保活概率。

4.2K20

Android 进阶4:Service 一些细节

则选择 Service 或者 IntentService 等服务 注意:默认情况下服务在其调用组件所在进程主线程中运行,它既不创建自己线程,也不在单独进程中运行。...: 服务终止时不会重建,比较安全 START_STICKY : 服务终止时重建并调用 onStartCommand() ,但传递 intent 为空,适用于不需要参数服务 START_REDELIVER_INTENT...前台服务 1.管家抉择 (Android进程生命周期)里我们已经知道: 仅当内存过低且必须回收系统资源以供具有用户焦点 Activity 使用时,Android 系统才会强制停止服务。...为了降低 Service 被回收可能,有时候我们需要把服务声明为前台,这样在内存不足时,系统也不会考虑将其终止,因为系统看来它正在与用户进行交互。...,默默无闻地后台奉献,没有界面,提示也是比较轻量级

1.1K80

Android 进程保活招式大全

通常在任意给定时间前台进程都为数不多。只有在内存不足以支持它们同时继续运行这一万不得已情况下,系统才会终止它们。 A. 拥有用户正在交互 Activity(已调用 onResume()) B....拥有正执行其 onReceive() 方法 BroadcastReceiver 1.2. 可见进程 —— Visible process 没有任何前台组件、但仍会影响用户屏幕上所见内容进程。...服务进程 —— Service process 尽管服务进程与用户所见内容没有直接关联,但是它们通常在执行一些用户关心操作(例如,在后台播放音乐或从网络下载数据)。...后台进程 —— Background process 后台进程对用户体验没有直接影响,系统可能随时终止它们,以回收内存供前台进程、可见进程或服务进程使用。...方案实现挑战 从 Android2.3 开始调用 setForeground 将后台 Service 设置为前台 Service 时,必须在系统通知栏发送一条通知,也就是前台 Service 与一条可见通知时绑定在一起

3.1K70

Android面试题(四大组件篇)

这意味着,某些情况下,只要onReceive()方法完成,手机就会休眠。如果您警报接收器调用Context.startService(),那么启动所请求服务之前,手机可能会休眠。...为了防止这种情况发生,您BroadcastReceiver和Service将需要实现一个单独唤醒锁定策略,以确保服务可用之前继续运行电话。 Q:前台服务是什么?和普通服务不同?...如何去开启一个前台服务前台服务即对用户可见服务,可以以通知形式创建前台服务 Q:是否了解ActivityManagerService,谈谈它发挥什么作用?...onStartCommand方法中,返回START_STICKY StartCommand()几个常量: START_STICKY 系统重新创建服务并且调用onStartCommand()方法,但并不会传递最后一次传递...当然,从理论上来讲这个方案是可行,实验一下结果也是可行。但是有些情况下,发送广播消息队列中排靠后,就有可能服务没有接收到广播就销毁了(只是猜想)。

87320

Android开发笔记(五十二)通知推送Notification

若为true,点击该通知后,通知会自动消失;若为false,点击该通知后,通知不会消失。...以上参数都设置完毕后,调用该方法会返回Notification对象 NotificationManager Notification只是生成通知内容,实际推送动作还需要借助于系统通知服务来实现...NotificationManager便是系统通知服务管理类,它常用方法如下: notify : 推送指定通知到状态栏和下拉列表 cancel : 取消指定通知。...方法推送,从而使得后台服务保持在前台运行,详细说明见《Android开发笔记(四十一)Service生命周期》。...3、采用RemoteViews方式让后台服务保持在前台运行,并可由后台服务运行进度来实时更新通知内容; 下面是采用RemoteViews方式通知推送效果图: ?

2.3K20

行情艰难,Android初中级面试题助你逆风翻盘,每题都有详细答案

参考解答:正常情况下,Activity常用生命周期就只有如下7个 onCreate():表示Activity正在被创建,常用来初始化工作,比如调用setContentView加载界面布局资源,初始化...,实际使用中没有其他明显区别; 2、Activity A 启动另一个Activity B 会调用哪些方法?...保证有权限访问情况下,通过隐式Intent进行目标ActivityIntentFilter匹配,原则是: 一个intent只有同时匹配某个Activityintent-filter中action...1.onStartCommand方式中,返回START_STICKY或则START_REDELIVER_INTENT START_STICKY:如果返回START_STICKY,表示Service运行进程被...; 4.提升Service进程优先级:进程优先级由高到低:前台进程 一 可视进程 一 服务进程 一 后台进程 一 空进程。

76820

浅谈Android中Service注册方式及使用

Service通常总是称之为“后台服务”,其中“后台”一词是相对于前台而言,具体是指其本身运行并不依赖于用户可视UI界面,因此,从实际业务需求上来理解,Service适用场景应该具备以下条件:...START_STICKY:当Service因为内存不足而被系统kill后,接下来未来某个时间内,当系统内存足够可用情况下,系统将会尝试重新创建此Service,一旦创建成功后将回调onStartCommand...“自启动管理”中有一个自启动应用列表,默认情况下,只有少应用(如微信、QQ、YY、360等)默认是可以自启动,其他应用默认都是禁止。...Service Android中Service接口中还提供了一个称之为”前台Service“概念。...UI显示上,notification将是一个处于onGoing状态通知,使得前台Service拥有更高进程优先级,并且Service可以直接notification通信。

2.4K20

从Service到WorkManager

所以Google为了保护用户隐私,Android8.0开始,限制了后台Service。 后台和前台Service 这就涉及到Service分类了。...如果从是否无感知来分类,Service可以分为前台和后台。前台Service会通过通知方式让用户感知到,后台有这么一个玩意在运行。...比如音乐类APP,在后台播放音乐同时,可以发现始终有一个通知显示在前台,让用户知道,后台有一个这么音乐相关服务。...Android8.0,Google要求如果程序在后台,那么就不能创建后台服务,已经开启后台服务会在一定时间后被停止。 所以,建议使用前台Service,它拥有更高优先级,不易被销毁。...中启动服务,然后会遍历没有完成任务,通过Binder找到对应JobService,执行onStartJob方法,完成任务。

1.4K30

精选Android中高级高频面试题:四大组件及Fragment原理

; 除了这种区别,实际使用中没有其他明显区别; 2、Activity A 启动另一个Activity B 会调用哪些方法?...参考回答: 保证有权限访问情况下,通过隐式Intent进行目标ActivityIntentFilter匹配,原则是: 一个intent只有同时匹配某个Activityintent-filter中...(重点) 参考回答: 先还是得当前系统中有没有拥有这个 Application 进程。如果没有,则需要处理 APP 启动过 程。...; 提升Service进程优先级 进程优先级由高到低:前台进程 一 可视进程 一 服务进程 一 后台进程 一 空进程 可以使用startForeground将service放到前台状态,这样低内存时,...ContentObserver:观察ContentProvider中数据变化,并将变化通知给外界。

1.7K00
领券