Dar*_*ava 5 javascript mobile android
我有以下代码,当(移动)设备稍微轻推时会发出蜂鸣声:
let audio = new Audio('ack.mp3');
function handleMotionEvent(event) {
let x = event.accelerationIncludingGravity.x;
let y = event.accelerationIncludingGravity.y;
if (Math.abs(x) + Math.abs(y) > 2.2) {
audio.play();
}
}
window.addEventListener("devicemotion", handleMotionEvent, true);
Run Code Online (Sandbox Code Playgroud)
它工作正常,但在设备锁定时根本不行.在设备锁定时我有什么方法可以检测到这个吗?
似乎您必须为该操作获取部分唤醒锁。电源管理器类。
PowerManager pm = (PowerManager)getSystemService(POWER_SERVICE);
PowerManager.WakeLock lock = pm.newWakeLock(PowerManager.PARTIAL_WAKE_LOCK, "SensorRead");
lock.acquire();
window.addEventListener("devicemotion", handleMotionEvent, true);
Run Code Online (Sandbox Code Playgroud)
您还需要以下权限AndroidManifest.xml:
<uses-permission android:name="android.permission.WAKE_LOCK" />
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
93 次 |
| 最近记录: |