我正在为Android Wear写一个自定义手表面部,并且我能够从手机发送设置数据到手表就好。但是,当手表处于环境模式且用户从手机更改设置时,我想从Ambient Mode中唤醒手表以显示手表的更新更改。伴侣移动应用程序从环境模式醒来穿戴设备
我一直使用的Power Manager试过,但我得到这个异常:
java.lang.IllegalArgumentException: Must specify a valid wake lock level.
at android.os.PowerManager.validateWakeLockParameters(PowerManager.java:442)
at android.os.PowerManager.newWakeLock(PowerManager.java:427)
,因为我设置newWakeLock唤醒锁级别我不明白这条消息。
这里是我的代码:
private PowerManager.WakeLock mWakeLock;
private void wakeUpScreen(){
PowerManager powerManager = (PowerManager) getSystemService(POWER_SERVICE);
if(mWakeLock == null) {
mWakeLock = powerManager.newWakeLock(PowerManager.ACQUIRE_CAUSES_WAKEUP,
"CubeWatch");
Log.d(TAG, "WAKE UP!!!!");
mWakeLock.acquire();
}
if(!mWakeLock.isHeld()) mWakeLock.acquire(); //if called a second time and isn't locked
mHandler.removeCallbacks(mRunReleaseLock); //if already waiting, then we'll start the time over
mHandler.postDelayed(mRunReleaseLock, 3000);
}
Handler mHandler = new Handler();
Runnable mRunReleaseLock= new Runnable() {
@Override
public void run() {
mWakeLock.release();
}
};
您是否找到针对您的问题的解决方案? – Umair