简体   繁体   English

Android BroadcastReceiver无法与IntentFilter一起使用

[英]Android BroadcastReceiver NOT working with IntentFilter

The control is not Entering inside the --> receiver = (BroadcastReceiver) (context, intent) -> { ===== loop

I am trying to lock the screen(android) and its not entering the loop after creating BroadcastReceiver object. 我正在尝试锁定屏幕(android),并在创建BroadcastReceiver对象后不进入循环。 I am trying to lock the screen using the proximity sensor. 我正在尝试使用接近传感器锁定屏幕。

public class ScreenLockerService extends Service {

    protected static final String TAG = ScreenLockerService.class.getCanonicalName();
    BroadcastReceiver receiver;

    @Override
    public void onCreate() {
        super.onCreate();
        Log.d(TAG, "onCreate");
        ProximitySensor.getInstance(getApplicationContext());
        IntentFilter filter = new IntentFilter();
        filter.addAction(Intent.ACTION_SCREEN_ON);

        System.out.println("Screen is being locked");
//        ScreenLock.lockScreen(getApplicationContext());
  //      Vibration.vibrate(getApplicationContext());
receiver = (BroadcastReceiver) (context, intent) -> {
                System.out.println("Screen....");

                try {
                    ProximitySensor proximitySensor = ProximitySensor.getInstance(context);
                    if (proximitySensor.hasProximitySensorHardware() && proximitySensor.isClose()) {
                        Log.d(TAG, "lock");
                        if (CallStatus.isCallStateIdle(context)) {
                            ScreenLock.lockScreen(context);
                            Vibration.vibrate(context);
                        }
                    }
                } catch (Exception e) {
                    Log.d(TAG, "Exception occurred: " + e);
                }
            }
        };
        registerReceiver(receiver, filter);
    }

您是否已经注册了广播接收机?如果没有,请先注册,如果您只是想锁定您的设备,则可以使用设备策略管理器或密钥进行操作

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 在Android中从BroadcastReceiver注销单个IntentFilter - Unregistering single IntentFilter from BroadcastReceiver in android 使用IntentFilter的Intend.ACTION_PACKAGE_REPLACED的BroadcastReceiver无法在服务中运行 - BroadcastReceiver with IntentFilter for Intent.ACTION_PACKAGE_REPLACED not working within a service BroadcastReceiver 和 IntentFilter 有什么区别? - What is the difference between BroadcastReceiver and an IntentFilter? 无法解析片段 class 中的方法 registerReceiver(android.content.BroadcastReceiver, android.content.IntentFilter) - Cannot resolve method registerReceiver(android.content.BroadcastReceiver, android.content.IntentFilter) in Fragment class 为什么 Android BroadcastReceiver 不工作? - Why Android BroadcastReceiver not WORKING? BroadcastReceiver在android中不起作用 - BroadcastReceiver not working in android Android-BroadcastReceiver无法正常工作 - Android - BroadcastReceiver not working 对于SMSReceiver类型,未定义方法registerReceiver(BroadcastReceiver,IntentFilter) - The method registerReceiver(BroadcastReceiver, IntentFilter) is undefined for the type SMSReceiver 如何使用intentfilter和broadCastReceiver检查WiFi连接? - How to check WiFi connection using intentfilter and broadCastReceiver? BroadcastReceiver中的MediaPlayer在Android中不起作用 - MediaPlayer in BroadcastReceiver not working in Android
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM