Локальное уведомление вызвало исключение SecurityException
Я сделал метод, который отправляет локальное уведомление, когда процесс завершает загрузку, когда я создаю приложение, все ясно без каких-либо ошибок / предупреждений, которые я получил это после выпуска с отчетом о сбое консоли Google
Вот метод уведомления:
public void notif() {
final int NOTIFICATION_ID = 1;
int icon = getIcon();
String provx = getProv();
NotificationCompat.Builder mBuilder = new NotificationCompat.Builder(getBaseContext());
Notification notification = mBuilder
.setSmallIcon(icon)
.setVibrate(new long[]{1000, 1000})
.setLights(Color.BLUE, 700, 500)
.setContentTitle("New notification!")
.setStyle(new NotificationCompat.BigTextStyle().bigText(provx))
.setSound(RingtoneManager.getDefaultUri(RingtoneManager.TYPE_NOTIFICATION))
.setContentText(provx)
.build();
NotificationManager nMN = (NotificationManager) getSystemService(NOTIFICATION_SERVICE);
nMN.notify(NOTIFICATION_ID, notification); //here where I got the error
}
Это журнал сбоев:
java.lang.SecurityException:
at android.os.Parcel.readException (Parcel.java:1425)
at android.os.Parcel.readException (Parcel.java:1379)
at android.app.INotificationManager$Stub$Proxy.enqueueNotificationWithTag (INotificationManager.java:246)
at android.app.NotificationManager.notify (NotificationManager.java:135)
at android.app.NotificationManager.notify (NotificationManager.java:111)
at com.dev.days.myapp.Splash.notif (Splash.java:184)
at com.dev.days.myapp.Splash$1.run (Splash.java:151)
at java.lang.Thread.run (Thread.java:856)
1 ответ
Решение
Как @Adam S предложил выше, это было просто решено путем добавления VIBRATE
разрешение в manifest
файл
<uses-permission android:name="android.permission.VIBRATE" />