2014-02-10 72 views
4

如何在下载图像和更新通知时删除此错误。如何在android中通知需要WAKE_LOCK?

java.lang.SecurityException:用户10080或当前进程 都没有android.permission.WAKE_LOCK。在 android.os.Parcel.readException(Parcel.java:1425)at android.os.Parcel.readException(Parcel.java:1379)at android.os.IPowerManager $ Stub $ Proxy.acquireWakeLock(IPowerManager.java: 326.) at android.os.PowerManager $ WakeLock.acquireLocked(PowerManager.java:309) at android.os.PowerManager $ WakeLock.acquire(PowerManager.java:300)at android.app.NotificationManager.notify(NotificationManager的.java:128) 在 android.app.NotificationManager.notify(NotificationManager.java:104)

回答

15
在您的Android清单文件的使用用于激活锁定许可
<uses-permission android:name="android.permission.WAKE_LOCK" /> 
+2

只是想提一提,“WAKE_LOCK”必须是大写,它的工作...我不知道这是显而易见的,但它并不适合我。 – LuisCien

+2

我在我的Manifest中拥有权限,但我仍然在我的crashlytics仪表板中看到这个崩溃。 – tasomaniac

1

把所有的用途,允许在清单

+0

它工作但不明白,你能解释一下吗? –

+0

@YogeshRathi请参阅我的回答http://stackoverflow.com/a/38795607/2980047 –

0

末端的尾锁是一种机制,表明您的应用程序需要有设备留任。

如果您想保持屏幕上的您需要此权限。

<uses-permission android:name="android.permission.WAKE_LOCK" /> 

呼叫acquire()收购之后锁定,并强制设备在创建之后锁定时所要求的水平留任。

拨打release()完成后不再需要锁。尽快做到这一点非常重要,以避免过度使用设备的电池。

富勒更多点击Doc