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

在Android Oreo下,启动完成后服务未重新启动

在Android Oreo及更高版本中,启动完成后服务不会自动重新启动。这是由于Android Oreo引入了一种新的行为模式,即后台限制。该行为模式旨在减少后台应用对系统资源的占用,从而提高设备性能和电池寿命。根据这种行为模式,Android Oreo限制了在后台运行的服务的功能。

具体来说,当应用进入后台时,服务将被视为后台服务。这意味着服务将受到一些限制,例如无法无限期地在后台运行。如果服务在后台运行超过一定时间(通常为数分钟),系统将认为该服务不再处于活动状态,并停止服务。这导致在Android Oreo下,启动完成后服务不会自动重新启动。

为了解决这个问题,开发人员可以采取以下措施:

  1. 后台限制适配:在AndroidManifest.xml文件中,将服务的android:stopWithTask属性设置为false。这样,服务将不会随着应用进入后台而停止。然而,这并不能保证服务将一直在后台运行,因为系统仍然可能会在一定时间后停止服务。
  2. 前台服务:将服务升级为前台服务。前台服务是一种在状态栏中显示通知的服务,可以向用户展示正在进行的任务。这样,服务将被视为更重要的服务,可以更长时间地在后台运行。但是,前台服务需要与用户进行互动,并向用户提供实时的通知。
  3. JobScheduler:使用JobScheduler API调度任务。JobScheduler是一种用于安排延迟执行任务的API,可以在系统资源允许的情况下执行任务。使用JobScheduler API,可以更好地控制服务的执行时间和频率,从而避免被后台限制。
  4. 后台限制白名单:如果您的应用确实需要在后台运行长时间的服务,可以请求用户将应用添加到系统的后台限制白名单中。用户可以通过以下步骤将应用添加到白名单中:设置 -> 电池 -> 电池优化 -> 不优化 -> 所有应用。请注意,这种方法需要用户手动操作,并不适用于所有情况。

关于Android Oreo下服务未重新启动的更多信息,请参考腾讯云文档中关于应用后台限制的说明:腾讯云文档-Android后台限制

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

相关·内容

MySQL服务启动:某些服务由其他服务或程序使用时将自动停止

1、其中一个是:Windows无法启动MySQL57服务(位于本地计算机上)错误1067:进程意外终止,报错如下图所示。 2、紧跟着还有一个报错:本地计算机上的MySQL服务启动后停止。...某些服务由其他服务或程序使用时将自动停止,报错如下图所示。 3、之后即便我垂死挣扎,命令行窗口中不断的重启MySQL服务,但是仍然没有戳到痛点,尝试的步骤有下图为证。...5、后来也想过直接通过点击“我的电脑>管理>服务>MySQL”,收到启动MySQL,但是丝毫没有改观。 6、经过一番尝试之后,还是行不通。...一般来说,MySQL的安装默认路径是:C:\Program Files\MySQL\MySQL Server 5.7\bin,大家可以做参考。 8、之后进行初始化data目录。...之后就可以看到MySQL服务顺利启动。 而且状态栏的MySQL Notifier中也会弹出提示,如下图所示,MySQL的状态变为从停止变为启动

3.1K11
  • MySQL服务启动:某些服务由其他服务或程序使用时将自动停止

    1、其中一个是:Windows无法启动MySQL57服务(位于本地计算机上)错误1067:进程意外终止,报错如下图所示。 2、紧跟着还有一个报错:本地计算机上的MySQL服务启动后停止。...某些服务由其他服务或程序使用时将自动停止,报错如下图所示。 3、之后即便我垂死挣扎,命令行窗口中不断的重启MySQL服务,但是仍然没有戳到痛点,尝试的步骤有下图为证。...5、后来也想过直接通过点击“我的电脑>管理>服务>MySQL”,收到启动MySQL,但是丝毫没有改观。 6、经过一番尝试之后,还是行不通。...一般来说,MySQL的安装默认路径是:C:\Program Files\MySQL\MySQL Server 5.7\bin,大家可以做参考。 8、之后进行初始化data目录。...之后就可以看到MySQL服务顺利启动。 而且状态栏的MySQL Notifier中也会弹出提示,如下图所示,MySQL的状态变为从停止变为启动

    2.4K30

    《Flutter》-- 2.Windows系统搭建开发环境

    安装完成后,运行Android Studio程序,弹出的对话框中选择“Do not import settings”单选按钮,单击“OK”按钮。...因为网络问题,Android Studio会提示设置代理服务器,单击“Cancel”按钮。 弹出欢迎界面后,按照默认提示,一路单击“Next”按钮,等SDK下载完成后,单击“Finish”按钮。...2.2.3 配置 安装完成后,进入Android Studio建立/导入项目的界面,先配置Android模拟器。...选择要下载的Android系统镜像文件(例如:Oreo 27),单击Download进行下载,下载完成后单击“Next”按钮,进入设置对应虚拟系统的外观信息界面。...2.6 热重载 Flutter的热重载功能可以帮助开发者重新启动应用的情况,快速地构建用户界面、添加功能以及修复漏洞。

    1.7K30

    Android Oreo 常见问题 3.0 | Android 开发者 FAQ Vol.11

    Android Oreo 发布以来,我们陆续收到了开发者们提出的一些新系统相关问题。尤其 1 月期间我们专门制作并上传了 Oreo 新功能应用的中文教学视频,帮助大家更快掌握系统新特性。...A:Android在后台中运行的服务会消耗设备资源,这可能降低用户体验。为了缓解这一问题,Android O 系统对这些服务施加了一些限制。...具体操作请参考 “【中文教学视频】Android Oreo 中的后台进程” Q 2:我比较重视 Android 的安全性问题,那么在这方面 Android O 有什么新的改进呢?...例如,自适应启动器图标可以一个OEM设备上显示圆形形状,并在另一个设备上显示一个圆角矩形,而开发者不需要进行额外的任何工作。...Android 模拟机可让您在不使用物理设备的情况开发和测试 Android 应用程序。 有关 Android 虚拟机命令行,请参考原文(链接:developer.android.cn)。

    74420

    Android 8.0新特性适配测试报告来啦!

    WeTest 导读 谷歌2017 I/O开发者大会上发布了Android 8.0的正式版, 其官方代号为Oreo(奥利奥)。...测试目的 检查游戏、APPAndroid8.0系统环境能否正常安装、启动、卸载 测试用例 ? 测试结果 ?...测试结论 测试的10个应用在允许安装权限情况均可正常安装、启动、卸载,Android8.0系统环境兼容性在这部分功能未出现问题。...暂时结论 Android8.0系统环境,安装启动测试项兼容性较好;画中画模式中会出现视频自动暂停播放、其他同时运行的应用卡顿甚至提示无响应的兼容性问题;通知圆点功能暂时与目前线上应用不兼容;后台进程限制的体验效果...总体来看,选取的几个系统新功能特性测试出现的Bug较多,一方面是Oreo自身版本存在问题,另一方面可能与目前线上应用对新系统特性提供接口支持有关。

    1.1K40

    EasyDSS Windows服务启动失败后不会重启的问题优化

    EasyDSS视频平台观看视频推流直播不需要安装插件,网页直接即可播放,通过浏览器进入平台即可进行配置,对用户来说,便捷可控,无需另行搭建服务器,对企业建立直播或者点播平台都具有很大的优势。...对于TSINGSEE青犀视频平台,如果碰到启动失败的问题,我们理想的情况是设定重启机制,但是EasyDSS Windows 系统服务运行失败后并不会自动重启。...因为和系统相关,代码中暂时无法实现该功能,因此只能通过脚本的方式设置,设置完毕后即可。...我们可以脚本文件中增加以下代码: :: 设置服务失败后,3秒钟后重新运行 sc failure "TsingseeMediaServer" reset= 0 actions= restart/3000

    1.3K20

    本地计算机上的MySQL服务启动后停止。某些服务由其他服务或程序使用时将自动停止

    1、其中一个是:Windows无法启动MySQL57服务(位于本地计算机上)错误1067:进程意外终止,报错如下图所示。 ? 2、紧跟着还有一个报错:本地计算机上的MySQL服务启动后停止。...某些服务由其他服务或程序使用时将自动停止,报错如下图所示。 ? 3、之后即便我垂死挣扎,命令行窗口中不断的重启MySQL服务,但是仍然没有戳到痛点,尝试的步骤有下图为证。 ?...5、后来也想过直接通过点击“我的电脑>管理>服务>MySQL”,收到启动MySQL,但是丝毫没有改观。 ? 6、经过一番尝试之后,还是行不通。...一般来说,MySQL的安装默认路径是:C:\Program Files\MySQL\MySQL Server 5.7\bin,大家可以做参考。 ? 8、之后进行初始化data目录。...之后就可以看到MySQL服务顺利启动。 而且状态栏的MySQL Notifier中也会弹出提示,如下图所示,MySQL的状态变为从停止变为启动。 ?

    62.8K2616

    像奥利奥一样的双重安全措施,尽在 Android Oreo

    如今 Oreo 终于正式和大家见面了,让我们回顾这其中的改进。 扩大硬件安全支持 Android 早已支持开机验证模式(Verified Boot),旨在防止设备软件被篡改的情况启动。... Android Oreo 中,我们随着 Project Treble 一同运行的验证开机模式(Verified Boot),称之为 Android 验证开机模式2.0(Android Verified...新的 Pixel 设备配有特殊的安全模块,所有搭载Android Oreo 的谷歌移动服务(GMS)的设备也需要实现密钥验证。这提供了一种强验证标识符机制,例如硬件标识符。...虽然是从 Android Oreo 才发布,但是即时运行应用支持 Android Lollipop 及以上版本的设备上运行。...我们与安全研究人员一起 1 各种芯片组固件中的 Wi-Fi 扫描环节中新增一个健全的MAC地址随机化功能. Android Oreo 带来远不止这些改进,还有更多。

    1.1K30

    Android 8.0 新特性适配测试报告来啦!

    1、测试目的 检查游戏、APPAndroid8.0系统环境能否正常安装、启动、卸载 2、测试用例 3、测试结果 4、测试结论 测试的10个应用在允许安装权限情况均可正常安装、启动、卸载,...Android8.0系统环境兼容性在这部分功能未出现问题。...Android O 对隐式广播、后台服务和位置更新等进行了后台自动限制,以此来减少后台数据使用、增加手机电池寿命。...六、暂时结论 Android8.0系统环境,安装启动测试项兼容性较好;画中画模式中会出现视频自动暂停播放、其他同时运行的应用卡顿甚至提示无响应的兼容性问题;通知圆点功能暂时与目前线上应用不兼容;后台进程限制的体验效果...总体来看,选取的几个系统新功能特性测试出现的Bug较多,一方面是Oreo自身版本存在问题,另一方面可能与目前线上应用对新系统特性提供接口支持有关。

    2.3K00

    笔记之Android架构组件-WorkManager

    service一直被用来做后台运行的操作,包括一些保活,上传数据之类的,这个后台运行的弊端很多,比如耗电,比如设计用户隐私之类的,谷歌对这些后台行为进行了一些处理,从Android Oreo(API 26...) 开始,如果一个应用的目标版本为Android 8.0,当它在某些不被允许创建后台服务的场景,调用了Service的startService()方法,该方法会抛出IllegalStateException...如果想继续使用service,必须调用Context.startForegroundService(),在前台启动服务,系统创建服务,应用有五秒的时间来调用该服务的 startForeground()...如果应用在此时间限制内调用startForeground(),则系统将停止服务并声明此应用为 ANR。...当约束继续得到满足时,或者程序重新启动时,系统将重新尝试执行该任务。

    90310

    2016级移动应用开发在线测试11-线程

    既进程通过创建而产生,通过系统调度而运行,当等待资源或事件时处于等待状态,完成后被撤销 2. ...以下对Android系统中的多线程描述错误的是() 您的回答为:ANR全称Application Not Responding,意思就是程序响应,常见于两种情况:应用在15秒内响应用户的输入事件(...,Android会同时启动一个对应的主线程,主线程主要负责处理与UI相关的事件 ()Android的主线程(UI线程是单线程的,Android的UI操作并不是线程安全的,UI操作必须在主线程中执行...()当应用程序启动时,Android会首先开启一个主线程,主线程负责进行事件分发。 ()一个Activity中无法创建多个组件或者子线程。 ...()Android应用程序的消息处理机制是服务于线程的,每个线程都可以有自己的消息队列和消息循环的。 4.

    70210

    安全专家说Android 8.0和iPhone X一样安全,这是真的吗?

    Android 这两年的甜点代号越来越腻味,上个月 Android 8.0,以代号 Oreo(奥利奥)的方式问世了,奥利奥感觉比牛轧糖、棉花糖之类的都要甜。...Android Oreo(以下简称 O)引入的安全特性包括有 Project Treble、System Alerts 系统警告,设备权限优化和 Verified Boot 验证启动升级等。...谷歌表示,关闭使用的系统调用能够减少内核攻击。...验证启动系统(Verified Boot) 早在 2013 年,Android 其实就已经有验证启动系统了,这项功能是为了保证设备软件(从硬件信任根直到系统分区)的完整性,启动过程进入下一个阶段之前,...最新的奥利奥系统中,验证启动进行了升级,系统现在会阻止用户启动到更早版本的系统——因为某些攻击者可能采用回滚系统的方式来攻击,毕竟老版本的系统会包含一些已经公开的漏洞。

    93490

    Android 插件化】VirtualApp 接入 ( VirtualApp 工程创建 Module | 添加依赖 | 启动 VirtualApp 插件引擎 )

    文章目录 一、 VirtualApp 工程创建 Module 二、添加依赖 三、启动 VirtualApp 插件引擎 四、博客源码 一、 VirtualApp 工程创建 Module ----...Android 插件化】VirtualApp 编译运行 ( VirtualApp 简介 | 配置 VirtualApp 编译环境 | 编译运行 VirtualApp 官方示例 ) 博客的前提下 ,...创建 Module ; 开发环境配置参考上面博客的环境 , Android Studio 3.0 , Android NDK r10e , Gradle 版本 4.1 , Gradle 插件版本 3.0.1...需要安装一些组件 ; 二、添加依赖 ---- 直接使用 VirtualApp 的 lib 依赖库 ; dependencies { implementation project(':lib') } 三、启动...VirtualApp 插件引擎 ---- Application 中的 attachBaseContext 方法中 , 执行如下代码 , 启动 VirtualApp 插件引擎 ;

    70810

    Android Oreo 常见问题 4.0|Android 开发者 FAQ Vol. 12

    Q 1: Android Oreo 安全性方面有哪些改变A:Google Play Protect (Verify Apps API,SafetyNet Attestation,reCAPTCHA for...Q 2: 一些用户反馈 Android 手机长时间使用后会出些卡顿,是什么原因导致这种现象呢? A:卡顿的原因很大部分来源于单个应用的多服务进程,后台监控、推送等服务。...A:除了自适应图标等新特性之外,Android Oreo 较之以前的版本 API 行为、系统功能等方面有所变更和进化。比如,API 方面的后台执行及位置限制。...A: Oreo 中,NDK 增加了一些安全性要求,比如,Android 版本中本机代码加载有些更改。例如,符号版本控制允许库提供更好的向后兼容性。...Q 7: 很多 Android 应用在退出后还是会自启占用手机内存,导致系统变慢,这种情况 Oreo 中会有所改善吗?

    1.2K50

    现已推出 Android 8.1 和 Android Oreo Go 版本 —— 为所有人打造由 AI 驱动的全覆盖移动平台

    该 API 支持设备上,能够多个关键使用场景(例如基于视觉的对象分类)实现快速高效的推理(inference)操作。 何不从今天起就开始使用 Android 8.1 Oreo?...同时我们正和设备厂商积极合作,争取未来几月扩大 Android 8.1 覆盖范围,其中包括针对 Android Oreo (Go 版本)的入门机型。 Android Oreo(Go 版本) ?...同时我们该指南内还说明了 “如何为 Android Oreo(Go 版本)机型优化应用”。... TensorFlow Lite 和神经网络 API 协同合作,移动设备能够高效运行类似 MobileNets、Inception v3 和 Smart Reply 之类的模块。... Android 8.1 上测试应用 如果您尚未准备就绪,可以先花一点时间测试应用,确保用户升级到 Android 8.1 Oreo 之后能够享受到预期体验。

    1.3K40
    领券