1
leots 2016-07-22 08:21:21 +08:00
回答你第一组问题:
1.1 浅度休眠和嗜睡模式都可能导致被 doze 的应用无法联网: 我只开启了浅度休眠,有的时候支付宝被休眠后,再打开会发现提示无网络连接。 1.2 xposed 可以 GCM 唤醒(捐赠),还可以有唤醒对齐等功能。 1.3 直接用阻止运行也可以,我用的是阻止运行+绿色守护。 Nexus 6P 用户 |
2
jonechenug 2016-07-22 08:36:49 +08:00 via Android
会把你的 TF 卡格式化成 ext ,还有权限严格了,默认只读不写,甚至有时候不给读的权限,相关的软件无法操作 TF 卡的文件
|
3
lfk0000 OP 谢谢 @leots !
1.1 那不支持 GCM 的 IIM (主要是 QQ 、微信),以及一切需要自建后台来维持推送功能的软件,是不是都会被 doze 住,无法推送? 1.2 捐赠了的,不过看 GCM 唤醒是说“允许 GCM 推送消息唤醒 [已休眠] 的应用”,而浅度休眠里面说的是“一旦开启,浅度休眠将在绿色守护中全面取代传统休眠机制”。。。这么说着似乎是开了浅度休眠, xposed 插件的那些针对传统休眠机制的功能全体歇菜的意思。。。。 1.3 好的,我也把阻止运行搞起 :P |
4
yangyaofei 2016-07-22 08:58:14 +08:00 via Android
第二个确实有一个 link2sd 的东西,是分一个 ext 分区挂载到 /data 然后想放入 sd 卡的移动文件后做软连接到相应目录,在 win 上非 ext 分区可以看到个操作, ext 分区貌似就只能安装相应的软件了。第三个不知道,用过 link2sd , sd 卡读写速度是硬伤………
|
5
honeycomb 2016-07-22 09:04:25 +08:00 via Android
浅睡模式就是强制应用进入 app standby 状态(等于在开发者设置为 set inavtive ),它是针对应用的,而不是 doze 的全局都影响。
融合储存相当于 Windows 10 Mobile 的导入储存卡,会对卡进行全盘加密 |
6
leots 2016-07-22 09:09:27 +08:00 1
@lfk0000
1.1 Google play 版本的微信有 GCM 推送,其他的不支持 GCM 的 app 将会被 doze 1.2 针对传统休眠机制的插件?抱歉,除了绿色守护,我没用过其他的关于 doze 的 app 。 |
7
honeycomb 2016-07-22 09:10:12 +08:00 via Android
@lfk0000 doze/app standby 的进入离开条件在 Android developers 网站有说,前者更具体的状态转换也有人解析。
Android 7 的 doze 比 Android 6 的更复杂, Android 6 检测到运动时, doze 会失效,在 Android 7 ,则有两个 doze 状态,运动时的 doze 限制的内容较少,类似于 app standby 。 |
8
qjhqxnne 2016-07-22 09:20:43 +08:00 2
昨天开始也在研究这个问题。
原一加 1 魔趣用户,现一加 3 氧 OS 用户。 魔趣 60.1 开始自带了宙斯盾可以实现类似绿色守护和阻止运行的功能,所以好久没用绿色守护了。换到一加 3 后,由于第三方 rom 尚未支持快充,只好暂时用氧 OS 搭配绿色守护(捐赠+Xposed )。阻止运行在被收购后的所作所为无法信赖,弃用。 需要压制的只有微信支付宝和个别银行应用,下面仅以微信为例。 前提:所有 APP 均为 Play 最新稳定版, MyAndroidToolsPro 对微信唤醒器仅开启 GCM 和消息接收提醒两个。这样不影响消息的即时接收提醒。 宙斯盾五大模块全部对微信开启后,切换到后台后微信不会接收任何消息,直到打开到前台。切换到微信界面的瞬间有时会出现无法联网的提示,说明的确进入了 doze 模式。 绿色守护启用全部 Xposed 功能: 仅开启浅睡模式,在使用快捷方式休眠并关屏后,很快就会接收到新消息。 仅开启嗜睡模式,快捷方式后,一般不会再收到新消息,这时手动打开微信会出现启动界面,基本可以认为类似于传统休眠彻底杀掉了后台。 对我来说,微信不需要保持消息畅通,偶尔看下即可,所以暂时会使用嗜睡模式,等魔趣支持快充后就刷过去。毕竟魔趣很多小功能找不到第三方 APP 来取代,比方说未知来源应用仅该次放行,还有针对各应用的隐私防护功能。 |
9
honeycomb 2016-07-22 09:34:20 +08:00 via Android
@qjhqxnne 嗜睡只是 doze ,本身不会杀进程。而是微信把自己分了好几个进程,其中有一个和界面有关的很容易被杀(或者是微信自己关的)
处于浅睡的应用无法连网但可以获取唤醒锁,处于 doze ( 6.0 )时就真的什么都不能做了 |
10
fangdingjun 2016-07-22 09:41:15 +08:00
绿色守护的嗜睡模式会导致系统唤不醒,现象是屏幕点不亮, adb 可以用,基本上一周一次
关掉后再没出现过 |
11
lfk0000 OP @qjhqxnne 谢谢测试!
你在 “仅开启浅睡模式” 和 “仅开启嗜睡模式” 的时候,有没有对 微信 进行 绿色化操作(点加号进入 应用排查顾问,然后把微信勾选,这样休眠他 |
12
nullizer 2016-07-22 10:38:39 +08:00
我感觉浅睡模式还是压不住一些毒瘤的唤醒,省电效果不好。
|
13
lfk0000 OP @qjhqxnne @honeycomb 有点糊涂了
浅睡开了,休眠就无效了? 比如我本来设置了对支付宝休眠,但是开启了浅睡,在灭屏后支付宝的进程不会被杀? 所以浅睡是针对全局所有程序一起生效的?只要开了浅睡,之前设置的休眠那些就无效了? 那如果开了浅睡,像 QQ 那样不支持 GCM 推送的程序,“网络活动和唤醒被阻止了”的话,是不是就无法即时的收到推送了? 而单独开启嗜睡,和传统休眠可以同时作用?只是传统休眠是真杀进程,嗜睡是深度睡眠(看上去像是杀了进程一样,其实没杀)? 那么,是不是可以这么理解: 浅睡:和传统休眠的不兼容,禁止网络通讯但是可以被 GCM 唤醒,唤醒锁可以按小时计的周期对齐了唤醒,充电时保持激活,亮屏时无限制(?是么) 嗜睡:和传统休眠的兼容,禁止网络通讯,也不能被 GCM 唤醒,唤醒锁彻底失效,充电时保持激活,亮屏时无限制(?是么) 如果浅睡和嗜睡对亮屏时的后台都不作限制的话,那还是得靠传统休眠(杀进程+切断唤醒)来治理各种流氓吧? |
14
qjhqxnne 2016-07-22 11:03:17 +08:00
@honeycomb 马丁龙猪说过,宙斯盾就是用的 doze 。那为何绿色守护的嗜睡会杀掉进程宙斯盾却不会?难道是绿色守护用 Xposed 的原因?
|
15
qjhqxnne 2016-07-22 11:07:44 +08:00
@lfk0000 绿色守护当然要把相关流氓加入到列表中。
我试了下用 MyAndroidToolsPro 禁掉微信的 GCM 广播接收器,用浅睡模式,还是能常常收到消息。说明微信消息主要依赖 NotifyReceiver 广播接收器来唤醒。 支付宝我的主要压制方法是用 MAT 把服务和广播接收器全部禁用。很久了,没发现任何功能失效。 |
16
Halry 2016-07-22 11:23:39 +08:00
浅睡只是绿色用了 doze 里面的一种方式让 app 暂停,而不是像以前一样杀掉进程.
doze 的话是关屏幕了,无运动,就仅让 gcm high priority 联网,在后台的 wakelock 全部被关闭,但是 app 是被浅睡,而不是被 kill |
17
Halry 2016-07-22 11:33:30 +08:00
顺便说一点,并不是所有手机都支持 doze,浅睡必须有 doze 支持.
有些手机没有支持 mpu,所以就没有 doze 了,反而强行开 doze 更费电. |
19
honeycomb 2016-07-22 11:56:33 +08:00 via Android
@lfk0000 绿色守护的休眠只会选一个模式,要么是杀进程的三个版本(设备管理器, root 版, xposed 版),要么是 6.0+才可使用的 app standby 。
用 app standby 的目的本就是不杀进程。 无论是系统处于 doze ,还是应用处于 app standby ,都能被高优先级 gcm/firebase message 唤醒 在 6.0 , doze 检测到运动 /亮屏,充电就会停止使用 app standby 会在充电期间暂停使用,亮屏时依然有效, app standby 保证每天有一次机会可以联网 |
20
honeycomb 2016-07-22 12:04:40 +08:00 via Android
@qjhqxnne 嗜睡(用那个 dumpsys xxx 的命令提前进入 doze+可选的阻止系统检测运动而终止 doze )和杀进程无关。
它只有使用非浅睡时的“绿色化”,才是由绿色守护执行 am force-stop + 包名的方式杀这个包相关的所有进程 微信有一个 NotifyService 是打算让系统容易杀掉的(它占得内存多,优先级没提过,也没有别的保活),微信刻意保活的是另一个内存占用很小的 CoreService ,没 NotifyService 进程的时候,开微信就会重新加载界面。 app standby 和 doze 都不会杀进程,只是微信的 NotifyService 所在的进程比较容易被杀 |
21
imn1 2016-07-22 12:23:50 +08:00
我觉得 iOS 用户会对此帖阅读困难,哈哈
求问 6.0 有什么 ROM 可以所有进出电话自动录音的(华为机),不需要点录音按钮?为了这个一直没升留在 5.1 |
24
qjhqxnne 2016-07-22 14:40:58 +08:00
现在每次重新打开微信大多会闪退,一次到 N 次,怀疑是微信对 Xposed 的反制。
同样的,魔趣+宙斯盾就没发生过这个问题。 一家还是赶紧开放快充源码吧。 |
25
XhstormR 2016-07-22 15:12:15 +08:00
看着楼上的,真不想用 Android 。
|
28
smallpath 2016-07-22 16:53:07 +08:00
永远港行+root ,一个冰箱就可以玩转安卓
|
29
rockzhou8 2016-07-22 19:54:29 +08:00
虽然常年安卓用户了,也在用绿守,但还是没弄懂这些模式
|
30
honeycomb 2016-07-22 20:54:00 +08:00 1
|
31
celon 2016-07-22 23:05:59 +08:00
看来要想好好使用 Android 还需要自身成为一个工程师才行
|
32
jyf007 2016-07-23 05:33:29 +08:00 via Android
亲测如果不格外置 SD card 也可以用,但是目录挂 /storage/序列号 /(对,你没看错了)每换一张卡、格式化一次都是不一样的。
|
33
CodeingBoy 2016-07-27 18:01:43 +08:00
@qjhqxnne 阻止运行被收购了?发生了什么?(´・_・`)
|
34
qjhqxnne 2016-07-27 22:48:09 +08:00
@CodeingBoy 去酷安围观好了。
|