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

Android 9下的startForeground()

在Android 9及以上版本中,startForeground()是一个用于启动前台服务的方法。前台服务是一种在通知栏显示持续通知的服务,它在用户可见的前台运行,具有较高的优先级和持久性。

startForeground()方法需要传入两个参数:一个通知的唯一ID和一个Notification对象。通知对象用于定义前台服务的外观和行为,包括标题、内容、图标等。

使用startForeground()方法可以将服务提升为前台服务,从而避免在后台被系统杀死。这对于需要长时间运行的服务或需要与用户进行交互的服务非常有用。

Android 9下的startForeground()方法的应用场景包括但不限于以下几种:

  1. 音乐播放器:在播放音乐时,将音乐播放服务设置为前台服务,以确保音乐持续播放并在通知栏显示相关信息。
  2. 导航应用:在导航应用中,将导航服务设置为前台服务,以确保导航指示持续显示在通知栏中,同时保持服务的持久性。
  3. 即时通讯应用:在即时通讯应用中,将消息推送服务设置为前台服务,以确保消息的实时接收和通知栏的更新。

腾讯云提供了一系列与Android开发相关的产品和服务,其中与前台服务相关的产品包括:

  1. 腾讯移动推送(https://cloud.tencent.com/product/tpns):提供消息推送服务,可用于将应用的通知推送到前台,并与startForeground()方法结合使用,实现前台服务的功能。
  2. 腾讯云移动直播(https://cloud.tencent.com/product/mlvb):提供音视频直播服务,可用于在前台服务中实现音视频播放和推流功能。

以上是对Android 9下的startForeground()方法的概念、分类、优势、应用场景以及腾讯云相关产品的介绍。

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

相关·内容

AndroidstartForeground使用

因此,Android 8.0 引入了一种全新方法,即 Context.startForegroundService(),以在前台启动新服务。...startForegroundService 在系统创建服务后,应用有五秒时间来调用该服务 startForeground() 方法以显示新服务用户可见通知。...针对Android 9(API级别28)或更高级别并使用前台服务应用程序必须请求 FOREGROUND_SERVICE permission 。...所以现在我们需要在清单文件中添加 Foreground服务权限 允许常规应用程序使用 Service.startForeground <uses-permission android:name="android.permission.FOREGROUND_SERVICE...; //设置为默认声音 } 在完成Notification通知消息构建后,在ServiceonStartCommand中可以使用startForeground方法来让Android服务运行在前台:

2.8K10

Android 进程保活】提升进程优先级 ( 使用前台 Service 提高应用进程优先级 | 启动相同 id 第二个前台 Service 关闭通知 )

文章目录 一、 前台 Service 通知问题 二、 设置 startForeground id 参数为 0 三、 启动相同 id 第二个前台 Service 关闭通知 1、 前台服务 1 2、 关闭通知栏服务...源码资源 ) 实现了一个前台 Service , 在通知栏 , 存在一个通知 ; 二、 设置 startForeground id 参数为 0 ---- 在开启 Service 时 , 调用 startForeground..., 发现该应用就变成了普通后台应用 , 没有进程提权效果 ; 三、 启动相同 id 第二个前台 Service 关闭通知 ---- 不同版本前台服务策略 : API Level < 18 :...()); API Level 18 ~ 25 : 直接使用 startForeground(10, new Notification()) 代码启动 , 但是必须启动两个前台服务进程 , 绑定相同 id...-- 用于提权前台进程 --> <service android:name=".foreground_service.ForegroundService"

1.7K20

Android 进程保活】应用进程拉活 ( 双进程守护保活 )

, 代码基本一致 , 这两个进程都是前台进程 , 都进行了提权 , 并且互相绑定 , 当监听到绑定另外一个进程突然断开连接 , 则本进程再次开启前台进程提权 , 并且重新绑定对方进程 , 以达到拉活对方进程目的...Binder 类 , 作为进程间通信桥梁 ; ( 这是个默认 AIDL 接口 ) /** * AIDL 远程调用接口 * 其它进程调与该 RemoteForegroundService...AIDL 接口 这里 AIDL 不实现任何操作 , 是系统默认生成 AIDL 接口 , 只是用于单纯绑定两个进程 , 监听进程连接断开 ; // IMyAidlInterface.aidl package...-- 本地服务 , API 18 ~ 25 以上设备, 关闭通知到专用服务 --> <service android:name=".LocalForegroundService...-- 远程服务 , API 18 ~ 25 以上设备, 关闭通知到专用服务 --> <service android:name=".RemoteForegroundService

3.1K21

Android 进程保活】提升进程优先级 ( 使用前台 Service 提高应用进程优先级 | 效果展示 | 源码资源 )

; 前台进程中除了前台显示 Activity 之外 , 还有前台服务 , 即调用 startForeground 方法启动服务 ; 按下 Home 键后 , 通过前台服务 , 让后台进程仍然是前台进程...(1, new Notification()); startForeground(); } @Override public IBinder onBind(Intent...intent) { return null; } /** * 启动前台服务 */ private void startForeground...设置 Activity 亲和性 让该界面在一个独立任务栈中 , 不要与本应用其它任务栈放在一起 避免解除锁屏后 , 关闭 1 像素界面 , 将整个任务栈都唤醒...-- 用于提权前台进程 --> <service android:name=".foreground_service.ForegroundService"

2.5K40

Android实现进程保活方案解析

早期Android系统不完善,从而导致有很多空子可以钻,它们用着各种各样方式进行保活,长期以来被人诟病耗电、卡顿,也滋生了很多流氓应用,拖垮Android 平台流畅性,建议不要这么做,本文只作技术性探讨...随着 Android 系统发展,这一切都在往好方向演变。 Android 5.0 以下,系统杀进程以 uid为标识,通过杀死整个进程组来杀进程。...Android 7.0 加强了之前鸡肋待机模式(不再要求设备静止状态),同时对开启了 Project Svelte,Project Svelte 是专门用来优化 Android 系统后台项目,在 Android...白色保活 用startForeground()启动前台服务,这是官方提供后台保活方式,不足就是通知栏会常驻一条通知,像360状态栏。...3、实现过程: 1)、用startForeground()启动前台服务 前台Service,使用startForeground这个Service尽量要轻,不要占用过多系统资源,否则系统在资源紧张时,照样会将其杀死

8.7K30

Android O 后台startService限制简析

Android O 推出出了Background Execution Limits,减少后台应用内存使用及耗电,一个很明显应用就是不准后台应用通过startService启动服务,这里有两个问题需要弄清楚...不是特别老Android版本都不允许没有LAUNCHER Activity应用,不然压根没法编译运行,也就说普通场景通过桌面启动应用时候,都是通过startActivity直接启动APP,在启动...: Context.startForegroundService() did not then call Service.startForeground() at android.app.ActivityThread...:807) 解决方案就是及时调用startForeground,对于O以后还要注意Notification需要一个ChannelID public class BackGroundService extends...作者:看书小蜗牛 Android O 后台startService限制简析 仅供参考,欢迎指正

12.3K30

Android 8.0 简单适配那些事儿

官网 对 Android 8.0 新特性以及适配相关介绍非常清楚,和尚根据官方要求逐步进行适配升级; 升级 SDK 首先要处理是 targetSDK = 26 compileSDK >...,有声音 IMPORTANCE_DEFAULT 可任何地方显示,有声音但不会在视觉上干扰 IMPORTANCE_MIN 无声音,只出现在状态栏中,不能与 startForeground 一起用 // Android8.0...和尚项目中推送相对简单,官网提供了很多丰富样式和细节,需要请官网查阅; Apk 下载安装 自从 Android N 开始,Android 便加大了对文件管理限制;Android 7.0...O 新权限要求; 注意事项 android...startForeground();若不调用,日志会提示没有调用 startForeground,甚至会出现 ANR 应用崩溃; // 启动 Service if (Build.VERSION.SDK_INT

1.2K21

Service 使用详解

#####阅读五分钟,每日十点,和您一起终身学习,这里是程序员Android 本篇文章主要介绍 Android 开发中部分知识点,通过阅读本篇文章,您将收获以下内容: Service 简介 四大组件之一...↳ android.app.Service Service 两种启动模式 Service 有两种不同启动模式 ,不同启动模式对应不同生命周期....设置前台服务两种方法 1.设置为前台服务 //设置为前台服务 startForeground(int, Notification) 2.取消前台服务//取消为前台服务 stopForeground...(true); startForeground 前台服务案例 功能:前台服务绑定通知信息,提高服务进程优先级,否则取消通知信息 package com.android.program.programandroid.component.Service...方法改为后台服务"); //通过builder.build()方法生成Notification对象,并发送通知,id=1 // 设置为前台服务 startForeground

65050

如何让service不被杀死

Android手机在启动过程中会触发一个Standard Broadcast Action,名字叫android.intent.action.BOOT_COMPLETED(记得只会触发一次呀),在这里我们可以通过构建一个广播接收者来接收这个这个...---------------------------------------- 如何实现一个不会被杀死进程 看Android文档知道,当进程长期不活动,或系统需要资源时,会自动清理门户,杀死一些...------------------------------------------------ 提升service优先级方法 Android 系统对于内存管理有自己一套方法,为了保障系统有序稳定运信...从Android 1.5开始,一个已启动service可以调用startForeground(int, Notification)将service置为foreground状态,调用stopForeground...我们会在调用startForeground(int, Notification)传入参数notification,它会在状态栏里显示正在进行foreground service。

1K70
领券