Java 为什么这个收音机不工作?

Java 为什么这个收音机不工作?,java,android,Java,Android,我想制作一个广播接收器,这样当屏幕关闭时,我会收到通知,然后再打开,但它什么都不做,问题是什么 public class SplashScreen extends SherlockActivity { PowerManager.WakeLock mWakeLock; BroadcastReceiver rec = new BroadcastReceiver() { @Override public void onReceive(Context context, Intent

我想制作一个广播接收器,这样当屏幕关闭时,我会收到通知,然后再打开,但它什么都不做,问题是什么

public class SplashScreen extends SherlockActivity {
PowerManager.WakeLock mWakeLock;

BroadcastReceiver rec = new BroadcastReceiver() {

    @Override
    public void onReceive(Context context, Intent intent) {
        if (intent.getAction().equals(Intent.ACTION_SCREEN_OFF)) {
            WakeLock screenLock = ((PowerManager) getSystemService(POWER_SERVICE))
                    .newWakeLock(PowerManager.SCREEN_BRIGHT_WAKE_LOCK
                            | PowerManager.ACQUIRE_CAUSES_WAKEUP, "TAG");
            screenLock.acquire();

        }

    }
};

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(com.sensounlock.R.layout.rotation);

    IntentFilter filter = new IntentFilter(Intent.ACTION_SCREEN_OFF);
    registerReceiver(rec, filter);
}
移动你的

BroadcastReceiver rec = new BroadcastReceiver() {
    @Override
    public void onReceive(Context context, Intent intent) {
        if (intent.getAction().equals(Intent.ACTION_SCREEN_OFF)) {
            WakeLock screenLock = ((PowerManager) getSystemService(POWER_SERVICE))
                    .newWakeLock(PowerManager.SCREEN_BRIGHT_WAKE_LOCK
                            | PowerManager.ACQUIRE_CAUSES_WAKEUP, "TAG");
            screenLock.acquire();

        }

    }
};
在你的创造下

public class SplashScreen extends SherlockActivity {
PowerManager.WakeLock mWakeLock;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(com.sensounlock.R.layout.rotation);

BroadcastReceiver rec = new BroadcastReceiver() {

    @Override
    public void onReceive(Context context, Intent intent) {
        if (intent.getAction().equals(Intent.ACTION_SCREEN_OFF)) {
            WakeLock screenLock = ((PowerManager) getSystemService(POWER_SERVICE))
                    .newWakeLock(PowerManager.SCREEN_BRIGHT_WAKE_LOCK
                            | PowerManager.ACQUIRE_CAUSES_WAKEUP, "TAG");
            screenLock.acquire();

        }

    }
};
        registerReceiver(rec, new IntentFilter("package.name.xx"));
        pi = PendingIntent.getBroadcast(this, 0, new Intent(
                "package.name.xx"), 0);
}

您在清单中注册了吗?@twntee不需要,我想通过代码注册,在停止时,您可以通过取消注册ReceiverXXX来停止它;package.name.xx是我的包的完整名称,例如com.example?是的,它是完整的包名称