从包中发布错误通知

时间:2015-08-02 11:03:08

标签: android notifications

我想为我使用此代码创建自定义通知

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)      

奇怪的是这段代码工作较早,但今天没有。
任何人都可以帮助我吗?

3 个答案:

答案 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))