gpt4 book ai didi

java - 即使在 Android 屏幕进入休眠模式后仍继续振动

转载 作者:太空宇宙 更新时间:2023-11-03 12:58:57 25 4
gpt4 key购买 nike

在我的应用程序中,我通过以下代码启动 VIBRATOR_SERVICE

long[] pattern = {50,100,1000}
Vibrator vibe=(Vibrator) context.getSystemService(Context.VIBRATOR_SERVICE);
vibe.vibrate(pattern, 0);

我希望振动持续到我打电话为止

vibe.cancel();

代码运行良好,但当屏幕进入休眠模式时振动消失。

我希望即使在屏幕进入休眠模式后振动仍会继续。有什么办法可以做到这一点?请帮助我。

提前致谢。 :)

最佳答案

问题的正确答案如下

在执行此操作之前,不要忘记将权限“android.permission.VIBRATE”添加到您的应用程序 list 文件中。

public BroadcastReceiver vibrateReceiver = new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
if(intent.getAction().equals(Intent.ACTION_SCREEN_OFF)) {
vibe.vibrate(pattern, 0);
}
}
};

IntentFilter filter = new IntentFilter(Intent.ACTION_SCREEN_OFF);
registerReceiver(vibrateReceiver, filter);

wakelock 在这里不起作用,因为接收器只有在屏幕熄灭后才会收到 Intent 。虽然我们可以在屏幕进入关闭模式后获得唤醒锁,但振动停止,因为它发生在 ACTION_SCREEN_OFF 时。所以可以在收到广播后重新开始振动来完成。

关于java - 即使在 Android 屏幕进入休眠模式后仍继续振动,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14561551/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com