在我的应用中,我们会显示一条通知,其中包含2个或3个操作按钮。
我遇到了一些设备崩溃,因为某些设备包括Blackberry,Asus,HTC< HUAWEI,广达,Oppo,Vivo,三星,Yu,MicroMaxx,OnePlus,联想,iTel,Royal等等众多设备
请注意,每台设备都没有崩溃。我已经尝试了6台以上的设备,它运行正常,但在一些设备上崩溃,主要是海信制造商。
崩溃原因:
Fatal Exception: android.app.RemoteServiceException: Bad notification posted from package net.AppName: Couldn't expand RemoteViews for: StatusBarNotification(pkg=net.AppName user=UserHandle{0} id=1536490752 tag=null score=0 key=0|net.AppName|1536490752|null|10115: Notification(pri=0 contentView=net.AppName/0x109007e vibrate=null sound=default defaults=0x1 flags=0x10 color=0x00000000 actions=3 vis=PRIVATE))
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1469)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:135)
at android.app.ActivityThread.main(ActivityThread.java:5270)
at java.lang.reflect.Method.invoke(Method.java)
at java.lang.reflect.Method.invoke(Method.java:372)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:915)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:710)
我使用的通知构建器代码是:
var mBuilder = NotificationCompat.Builder(context)
.setLargeIcon(BitmapFactory.decodeResource(context.resources, R.drawable.in_ic_icon_v4))
.setSmallIcon(R.drawable.in_ic_notification_icon_v4)
.setContentTitle(context.getString(R.string.msg_new_account))
.setContentText(body)
.setStyle(NotificationCompat.BigTextStyle().bigText(body))
.setDefaults(Notification.DEFAULT_SOUND)
.setAutoCancel(true)
mBuilder.addAction(-1, skip, getPendingIntent(getIntentForAction(context, skipBundle), context, requestCode))
mBuilder.addAction(-1, skip, getPendingIntent(getIntentForAction(context, skipBundle), context, requestCode))
val mNotificationManager = context.applicationContext.getSystemService(Context.NOTIFICATION_SERVICE) as NotificationManager
mNotificationManager.notify(id, mBuilder.build())
抛出RemoteServiceException。具有讽刺意味的是,我在通知中没有任何RemoteView。有人可以帮助我吗?
它与图标大小有关吗?我使用pngs,最大大小是20kb(对于xxhdpi)。我也读过.setStyle(NotificationCompat.BigTextStyle()。bigText(body))会导致问题,是吗?