我想开发一个在用户拔出耳机时自动触发的应用程序。我想知道是否可以在前台自动运行它以避免解锁屏幕。
先感谢您。
使用标准 API 无法做到这一点。某些应用程序可以在后台运行,但前提是它们执行某些非常具体的任务(例如,播放音频或使用 GPS 导航的应用程序)。但即使你这样做了,你也不能以编程方式做这些事情:1.禁用锁定屏幕 2.检测手机何时被锁定 3.将你的应用程序置于前台。
如果您构建服务,您可以在后台运行。此外,您可以拦截 SCREEN_ON 或 SCREEN_OFF 事件(查找 BrodcasrReciever 以了解如何使用它)。使用该事件来执行您的代码。并禁用你的锁屏......这很简单:
KeyguardManager keyguardManager = (KeyguardManager)getSystemService(Activity.KEYGUARD_SERVICE);
KeyguardLock lock = keyguardManager.newKeyguardLock(KEYGUARD_SERVICE);
lock.disableKeyguard();