因此,基于https://developer.amazon.com/help/faq.html#KindleFire的Kindle Fire不支持disable_keyguard权限。
但我希望我的应用既能在普通的android设备上运行,也能在kindle上运行。这个问题有什么简单的解决方案吗?
而且这个权限是必须的,所以我不能简单地将它从应用程序中删除。
发布于 2012-12-15 16:18:41
您可以只使用try catch围绕disableKeyguard()调用,并在那里执行一些额外的逻辑。
KeyguardManager kgm = (KeyguardManager) Application.getSystemService(Application.KEYGUARD_SERVICE);
KeyguardManager.KeyguardLock kl = kgm.newKeyguardLock(VIEW_LOG_TAG);
try{
kl.disableKeyguard();
}
catch (SecurityException e)
{
//kindle code goes here
}发布于 2012-03-23 00:42:02
我不太确定你的应用程序的上下文是什么,但是Wake Lock?怎么样?这可能会耗费你的电池寿命。
发布于 2012-03-23 01:39:57
您需要应用程序的两个版本,一个用于Fire,另一个用于现有的目标。您可以通过将大部分逻辑放在一个Android库项目中来实现这一点,该项目在两个常规Android项目之间共享(一个具有键盘守卫功能,另一个没有)。
https://stackoverflow.com/questions/9826334
复制相似问题