在Appwidget中更改背光亮度不会立即响应



我创建了一个简单的Appwidget,通过以下代码控制屏幕的亮度:

android.provider.Settings.System.putInt(context.getContentResolver(), 
                  android.provider.Settings.System.SCREEN_BRIGHTNESS, 50);

当我点击小部件时,背光的亮度不会立即发生变化。但当我锁定和解锁手机时,它就工作了。我读过以编程方式更改屏幕亮度(与电源小部件一样),使用虚拟活动将给出解决方案。所以我创建了一个类似的活动

public class Bright extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    this.finish();
}
}

在我的AppWidget类中,我使用了这样的意图:

context.startActivity(new Intent(context, Bright.class));

但当我点击小部件时,它会强制关闭。我的实现对于我的AppWidget是正确的吗??

如果希望它立即响应,也应该使用getWindow().getAttributes().screenBrightness来调整虚拟Activity中的亮度。

至于崩溃,您可能需要发布堆栈跟踪。但首先要检查您是否已将其添加到您的清单中。

相关内容

  • 没有找到相关文章

最新更新