我想为我使用此代码创建自定义通知
RemoteViews remoteViews;
Intent intent;
NotificationCompat.Builder builder;
PendingIntent pIntent;
intent = new Intent(context, SarinaHome.class);
pIntent = PendingIntent.getActivity(context, 0, intent,
PendingIntent.FLAG_UPDATE_CURRENT);
remoteViews = new RemoteViews(context.getPackageName(),
R.layout.custom_notification);
builder = new NotificationCompat.Builder(context)
// Set Icon
.setSmallIcon(R.drawable.ic_launcher)
// Set Ticker Message
.setTicker(context.getString(R.string.app_name))
// Dismiss Notification
.setAutoCancel(true)
// Set PendingIntent into Notification
.setContentIntent(pIntent)
// Set RemoteViews into Notification
.setContent(remoteViews);
remoteViews.setTextViewText(R.id.message_custom_notification,message+ context.getString(R.string.havenewmessage));
NotificationManager notificationmanager = (NotificationManager) context.getSystemService(Context.NOTIFICATION_SERVICE);
notificationmanager.notify(1130, builder.build());
但是我给出了以下错误消息:
Process: com.rad.sarina, PID: 12557
android.app.RemoteServiceException: Bad notification posted from package com.rad.sarina: Couldn't expand RemoteViews for: StatusBarNotification(pkg=com.rad.sarina user=UserHandle{0} id=1130 tag=null score=0: Notification(pri=0 icon=7f0200b3 contentView=com.rad.sarina/0x7f030024 vibrate=null sound=null defaults=0x0 flags=0x10 when=1438512821851 ledARGB=0x0 contentIntent=Y deleteIntent=N contentTitle=N contentText=N tickerText=6 kind=[null]))
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1453)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:136)
at android.app.ActivityThread.main(ActivityThread.java:5479)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:515)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1283)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1099)
at dalvik.system.NativeStart.main(Native Method)
奇怪的是这段代码工作较早,但今天没有。
任何人都可以帮助我吗?
答案 0 :(得分:1)
异常android.app.RemoteServiceException:发布错误通知 从包com.xxxx:无法展开RemoteViews: StatusBarNotification(pkg = com.swazer.smares user = UserHandle {0} id = 1 tag = null score = 0:通知(pri = 0 icon = 7f0201aa contentView = com.swazer.smares / 0x1090069 vibrate = null sound = null defaults = 0x0 flags = 0x10 when = 1498216158616 ledARGB = 0x0 contentIntent = Y. deleteIntent = N contentTitle = 13 contentText = 53 tickerText = N kind = [null] 2个动作))
将vectorDrawables
放到通知中,这是同样的例外我改变了ti到图像png它运作良好
答案 1 :(得分:-1)
我发现了我的问题并且不在我的问题中#34;对此感到抱歉"
我在自定义通知中使用滚动视图,我们无法在自定义通知中使用#34;我不知道为什么可能与状态菜单滚动混合"。
所以不要在自定义通知中使用滚动视图
答案 2 :(得分:-2)
Notification(pri=2 contentView=com.android.incallui/0x7f04009e vibrate=null
sound=null defaults=0x0 flags=0x2 color=0x00000000 originalPackageName=N originalUserId=0
vis=PRIVATE publicVersion=Notification(pri=0 contentView=com.android.incallui/0x7f0400aa
vibrate=null sound=null defaults=0x0 flags=0x10 color=0x00000000 originalPackageName=N
originalUserId=0 vis=PUBLIC))