1

这是问题所在。我在带有冰淇淋三明治的 Android 设备上工作,当我通过 Wifi 从计算机 ping 设备时,我想唤醒设备。

我正在“尝试”使用以下代码来唤醒设备,但它似乎不起作用。

WakeLock lock = ((PowerManager) getSystemService(POWER_SERVICE)).newWakeLock(PowerManager.SCREEN_DIM_WAKE_LOCK
            | PowerManager.ACQUIRE_CAUSES_WAKEUP, "TAG");
lock.acquire();

KeyguardManager km = (KeyguardManager) getSystemService(KEYGUARD_SERVICE);
  requestWindowFeature(Window.FEATURE_NO_TITLE);

getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN |
            WindowManager.LayoutParams.FLAG_DISMISS_KEYGUARD |
            WindowManager.LayoutParams.FLAG_SHOW_WHEN_LOCKED |
            WindowManager.LayoutParams.FLAG_TURN_SCREEN_ON,
            WindowManager.LayoutParams.FLAG_FULLSCREEN |
            WindowManager.LayoutParams.FLAG_DISMISS_KEYGUARD |
            WindowManager.LayoutParams.FLAG_SHOW_WHEN_LOCKED |
            WindowManager.LayoutParams.FLAG_TURN_SCREEN_ON);
lock.release();

我正在使用服务来唤醒设备,但它似乎不起作用。

4

1 回答 1

2

您可以使用 android.net.wifi.STATE_CHANGE 广播事件。要实现这一点,您需要在清单文件中注册广播。

这可能对您有所帮助。 http://www.grokkingandroid.com/android-tutorial-broadcastreceiver/

于 2012-10-02T08:51:03.527 回答