Andriod后台限制汇总
从Android开发者网站上,目前看到4种限制机制,分别是低电耗模式,应用待机模式,应用待机分组和省电模式。本文对这些后台限制模式进行简单的汇总。
该文章的内容均来自于Android开发者网站。对于这些限制,本人没有全部实际测试,只是为了记录。
此外,每个手机厂商可能会定制一些自己的逻辑,所以可能和Android开发者网站的描述可能不一致。
低电耗模式
低电耗模式就是doze模式。Android开发者网站对低电耗模式的描述如下:
如果用户未插接设备的电源,在屏幕关闭的情况下,让设备在一段时间内保持不活动状态,那么设备就会进入低电耗模式。在低电耗模式下,系统会尝试通过限制应用访问占用大量网络和 CPU 资源的服务来节省电量。它还会阻止应用访问网络,并延迟其作业、同步和标准闹钟。
系统会定期退出低电耗模式一小段时间,让应用完成其延迟的活动。在此维护期内,系统会运行所有待处理的同步、作业和闹钟,并允许应用访问网络。
限制:
暂停访问网络
忽略wakelock
推迟Alarm
不执行 WLAN 扫描
不运行SyncAdapter
不运行JobScheduler
命令:
adb shell dumpsys deviceidle force-idle
adb shell dumpsys deviceidle unforce
adb shell dumpsys battery reset
1
2
3
1
2
3
应用待机模式
应用待机模式允许系统判定应用在用户未主动使用它时是否处于闲置状态。当用户有一段时间未触摸应用时,系统便会作出此判定,以下条件均不适用:
用户正在打开应用
应用有一个前台进程
应用存在通知(锁屏通知或通知栏通知)
应用是设备管理器
命令:
adb shell dumpsys battery unplug
adb shell am set-inactive <packageName> true
adb shell am set-inactive <packageName> false
adb shell am get-inactive <packageName>
1
2
3
4
5
6
1
2
3
4
5
6
应用待机分组
Android 9 引入了一项新的电池管理功能,即应用待机群组。 应用待机群组可以基于应用最近使用时间和使用频率,帮助系统排定应用请求资源的优先级。 根据使用模式,每个应用都会归类到五个优先级群组之一中。 系统将根据应用所属的群组限制每个应用可以访问的设备资源。
五个群组按照以下特性将应用分组:
活跃
工作集
常用
极少使用(系统会限制应用连接到网络的能力)
从未使用
API:
UsageStatsManagergetAppStandbyBucket()
1
1
命令:
adb shell am set-standby-bucket packagename active|working_set|frequent|rare
adb shell am set-standby-bucket package1 bucket1 package2 bucket2
adb shell am get-standby-bucket [packagename]
1
2
3
4
5
1
2
3
4
5
省电模式
Android 9 对省电模式进行了多处改进。 设备制造商可以决定施加的确切限制。 例如,在 AOSP 构建中,系统会应用以下限制:
系统会更积极地将应用置于应用待机模式,而不是等待应用空闲。
后台执行限制适用于所有应用,无论它们的目标 API 级别如何。
当屏幕关闭时,位置服务可能会被停用。
后台应用没有网络访问权限。
手机连接电脑方式:
1手机需要处于开机状态。
2将手机与电脑连接,下滑手机屏幕顶帘,查看通知栏是否有提示已连接为媒体设备”或已连接进行充电”-勾选媒体设备MTP”。
注:
1若手机连接电脑时屏幕已锁屏,建议先将屏幕解锁。
2若连接后无任何反应,可能是由于电脑中缺少USB驱动,请在电脑中下载安装Kies或S换机助手软件。
若手机为Android43及以上系统,请下载安装Kies3版本或下载PC版S换机助手连接电脑即可。
注:根据电脑的 *** 作系统选择Windows版本下载/MAC
OS版本下载。
ADB认不出来可以试一下下面的方法:
1、首先在电脑中安装kies软件,安装kies软件时手机与电脑不能连接。
如果手机系统版本为43及以上版本,下载KIES3版本。
2、安装完成后手机连接数据线,下拉手机顶帘菜单,点击已连接为媒体设备,选择MTP连接模式。
3、然后手机连接电脑即可,如果无法连接下拉通知栏,选择MTP连接模式。
4、若依旧不能连接,请检查电脑中Windows Media Player是否安装,检查电脑中Windows 。Media Player版本是否在11以上,若版本较低,建议下载最新版本软件。
5、断开手机与电脑的连接,重新打开Kies软件。
6、更换电脑USB接口,台式机建议用主机后面的USB端口。
7、关闭电脑中的杀毒软件或防火墙尝试。
8、有可能跟电脑系统兼容程序有关,也可更换其他电脑尝试连接。

TesterYuan
关注
ADB 之 查看设备时设备无法识别问题 原创
2018-10-24 19:59:20

TesterYuan 
码龄8年
关注
使用ADB查看设备,输入命令后会显示电脑连接的手机
adb devices
如果没有显示任何信息,检查自己的设备是否连接成功。
1开启开发者模式
可以尝试打开设置-->关于手机-->连续快速点击内部版本号
不同品牌手机开启方式可能不太一样,可以根据品牌分别点击内部版本号(三星、OPPO、华为、Pixel 等)、MIUI版本号(小米)或ZUI版本号(摩托罗拉)
2打开开发者模式以及开发者模式下的USB调试
多数手机会d出一个系统d框,询问是否允许USB调试,点击允许即可
3切换USB连接模式
如果此时已然无法识别到手机设备,可以查看手机通知栏,找到USB连接方式,切换MTP或充电,也可以来回切换。有的手机是充电模式才能连接成功(比如LG K10),有些手机需要MTP模式或者文件传输模式,才能连接成功。如果上述方法无效
如果上述方法无效,也可以尝试物理解决方案(亲测有效):
1尝试另一个USB 接口
2换另一根数据线
一、手机开发者模式即开发者选项,顾名思义是为开发者准备的工具。
二、开发者模式的作用:实现很方便很强大的功能,但对于一般用户,反而有风险。比如"充电时不锁定屏幕",只要连接了USB就不会锁屏,也就免除了反复解锁的麻烦。"USB调试",通过ADB可以实现非常多样的 *** 作,比如发送广播,停用应用,拉取文件,打开活动,等等。"GPU呈现模式分析",则会帮助开发者优化应用,减少加载时间等。
三、手机开发者模式是可以关闭的,具体 *** 作如下:
1、首先,要手机上找到设置按钮,点击进入。
2、进入设置后,拉到底部,就会看到开启的“开发人员选项”。
3、在设置界面中找到有一个“应用管理”点击。
4、进入应用管理后,选择到全部,并在界面中找到有一个“设置”,点击。
5、进入设置界面后, *** 作这一步主要是为了清除一下数据,会看到有一个“删除数据”。
6、点击进入,就会d出一个提示窗口“是否删除应用数据”,再点击“确定”。
7、这时我们在重新打开设置,拉到底部就不会看到“开发人员选项”这一命令啦!这就表示开发者模式成功关闭啦。
以上就是关于开发者选项应用待机状态全部的内容,包括:开发者选项应用待机状态、手机打开usb调试,输入adb命令连不上手机怎么办、三星手机连接电脑后自动安装了三星驱动,ADB认不出来是怎么回事等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)