如何检查屏幕解锁类型的设备

时间:2018-05-01 06:37:12

标签: android broadcast

我搜索了很多,但我的查询与之不符,我找到了解锁和解锁手机

就像这样,我用我收到的3个过滤器创建了我的广播:

public class ScreenReceiver extends BroadcastReceiver {
    @Override
    public void onReceive(Context context, Intent intent) {
        if (intent.getAction().equals(Intent.ACTION_SCREEN_OFF)) {
            Log.e(TAG, "In Method:  ACTION_SCREEN_OFF");
        } else if (intent.getAction().equals(Intent.ACTION_SCREEN_ON)) {
            Log.e(TAG, "In Method:  ACTION_SCREEN_ON");
        } else if (intent.getAction().equals(Intent.ACTION_USER_PRESENT)) {
            Log.e(TAG, "In Method:  ACTION_USER_PRESENT");
        }
    }
}

我需要找出用户解锁屏幕的方式。如果用户使用密码或模式或指纹或按钮解锁了屏幕。

所以我无法获得可以获得跟随输出的特定事件。

所以有点帮助朝着正确的方向前进。

1 个答案:

答案 0 :(得分:0)

要检测锁定模式我在下面使用了代码。所以,我认为它也可以帮助你。你可以使用 Settings.Secure.LOCK_PATTERN_ENABLED 标志。显示如下: -

private static boolean CheckPatternSet(Context context)
{
    ContentResolver contentResolver = context.getContentResolver();
    try
    {
        int lockEnabled = Settings.Secure.getInt(contentResolver, Settings.Secure.LOCK_PATTERN_ENABLED);
        return lockEnabled == 1;
    }
    catch (Settings.SettingNotFoundException e)
    {
        return false;
    }
} 

要了解更多信息,您可以在下面显示stackoverflow链接: -

Android check if lockscreen is set