Android PowerManager isInteractive()vs isScreenOn()bug?

时间:2015-12-02 15:43:10

标签: android powermanager android-powermanager

我正在尝试使用以下代码确定屏幕是否打开:

    private void isScreenOn() {
        if (Build.VERSION.SDK_INT >= 20) {
            if (mPowerManager.isInteractive()) {
                //Do stuff
            }
        } else {
            if (mPowerManager.isScreenOn()) {
                //Do stuff
            }
        }
    }

我有来自该领域的报道记录了这一点:

com.aws.android I/dalvikvm: Could not find method android.os.PowerManager.isInteractive, referenced from method ...

任何人都可以帮我理解这是怎么发生的吗? isScreenOn()方法应该在API 19之前有效,并且isInteractive()应该对API 20及更高版本有效。我在这里做错了吗?

1 个答案:

答案 0 :(得分:4)

我弄明白了这个问题。我的目标是Android SDK版本22.如果您在运行<的设备上调用PowerManager.isScreenOn()版本20,然后isScreenOn调用真的只包含isInteractive调用。

这在文档中有详细说明,但在我阅读时没有注册。