首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Android省电模式监听器

Android省电模式监听器
EN

Stack Overflow用户
提问于 2015-06-18 01:08:51
回答 1查看 1.7K关注 0票数 3

在android 5.0棒棒糖上,我试图检测省电模式状态之间的变化-启用或禁用,但没有任何运气。

我读了这个用户的文章

1:Android power save mode listener?,但在我的设备上--三星galaxy S5,基于Android5.0,它就不能工作了

我使用的源码是:

代码语言:javascript
复制
  <receiver android:enabled="true" android:name=".core.receiver.PowerSaveModeReceiver" >
        <intent-filter>
            <action android:name="android.os.action.POWER_SAVE_MODE_CHANGED"/>
        </intent-filter>
    </receiver>

因此,当我手动更改设备上的省电模式时,我不会收到任何广播。谢谢你的帮助!

EN

回答 1

Stack Overflow用户

发布于 2016-02-12 02:07:20

这是因为三星和宏达电都决定将其电源管理器设置存储在Settings.System中。

宏达电使用密钥"user_powersaver_enable“,三星使用密钥"psm_switch”。

ContentObserver示例如下:

代码语言:javascript
复制
getContentResolver().registerContentObserver(Settings.System.CONTENT_URI, true, new ContentObserver(null){
  @Override
  public void onChange(boolean selfChange, Uri uri){
    super.onChange(selfChange, uri);
    String key = uri.getPath();
    key = key.substring(key.lastIndexOf("/") + 1, key.length());

    if (key.equals("user_powersaver_enable") || key.equals("psm_switch")){
      boolean batterySaverEnabled = Settings.System.getString(getContentResolver(), key).equals("1");

    }
  }
});

源:Checking for Power Saver Mode Programically

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30898047

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档