在Doze模式下,指定app到白名单

xiaoxiao2025-08-02  24

处于Doze模式时,进行了以下操作。 1.网络接入被暂停 2.系统忽略wakelocks 3.标准的AlarmManageralarms被延缓到下一个maintenancewindow 4.如果你需要在Doze状态下启动设置的alarms,使用setAndAllowWhileIdle()或者setExactAndAllowWhileIdle()。 5.当有setAlarmClock()的alarms启动时,系统会短暂退出Doze模式 6.系统不会扫描Wi-Fi 7.系统不允许syncadapters运行 8.系统不允许JobScheduler运行

怎么将非系统app预置到Doze的白名单中 按步骤1-4操作后,然后全编译。 1.在framework/base/data创建一个data目录 2.在framework/base/data/data下创建deviceidle.xml, 并把要放入白名单的应用按格式写入到该文件

<?xml version='1.0' encoding='utf-8' standalone='yes' ?> <config> <wl n="com.android.printspooler"/>#package of whitelist app,per package a line <wl n="com.tenxu.qq"/> </config>

3.在 framework/base/data/data下创建一个 android.mk

LOCAL_PATH := $(my-dir) ######################## include $(CLEAR_VARS) LOCAL_MODULE := deviceidle.xml LOCAL_MODULE_CLASS := DATA # This will install the file in /data/system # LOCAL_MODULE_PATH := $(TARGET_OUT_DATA)/system LOCAL_SRC_FILES := $(LOCAL_MODULE) include $(BUILD_PREBUILT)

4.在build/target/base.xml 声明deviceidle.xml

# Base modules (will move elsewhere, previously user tagged) PRODUCT_PACKAGES += \ ....... bugreportz \ cameraserver \ content \ deviceidle.xml \ #add this line dnsmasq \

怎么将系统app预置到Doze的白名单中 参照/system/etc/sysconfig/google.xml,在该文件内添加allow-in-power-save 属性 或者另创建一个xml文件预置到/system/etc/sysconfig/

doze原理分析源码frameworks/base/services/core/java/com/android/server/DeviceIdleController.java

转载请注明原文地址: https://www.6miu.com/read-5034143.html

最新回复(0)