如何在Android M中访问IDeviceIdleController实例

时间:2015-06-29 19:04:43

标签: android reflection android-6.0-marshmallow powermanager

我正在探索Android M预览版1的变化。具体来说,我想知道我是否可以通过编程方式检查我的应用是否已从Doze和App Standby模式列入白名单。我基本上想要" adb shell dumpsys deviceidle"的结果。我试图通过getSystemServices获取android.os.IDeviceIdleController的实例,但它返回null。当我做" adb shell服务列表"我得到" 56 deviceidle:[android.os.IDeviceIdleController]"。如果我可以访问该实例,那么我使用java反射来访问公共方法isPowerSaveWhitelistApp(字符串名称)。