Android有时我得到android.app.RemoteServiceException:从包发布不良通知。为什么?

时间:2012-07-16 19:45:51

标签: android exception notifications

我的通知存在严重问题。

有时当我的应用发布相同的自定义通知时,我收到此错误:

android.app.RemoteServiceException: Bad notification posted from package  com.packagename: Couldn't expand RemoteViews for: ClassName(package=com.packagename id=0     tag=null notification=Notification(vibrate=null,sound=null,defaults=0x0,flags=0x22))
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1093)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:130)
at android.app.ActivityThread.main(ActivityThread.java:3906)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:507)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:840)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:598)
at dalvik.system.NativeStart.main(Native Method)

我该怎么办?

该通知仅包含LinearLayout,TextViews和ImageViews,并且大部分时间都可以完美运行。

有一种方法可以用try / catch包围这个错误,这样android就不会停止我的应用了吗?

非常感谢......

1 个答案:

答案 0 :(得分:2)

1)http://grepcode.com/file/repository.grepcode.com/java/ext/com.google.android/android/4.1.1_r1/android/app/ActivityThread.java#ActivityThread

从这里我们可以看到,只有在一种情况下才会出现此错误:

case SCHEDULE_CRASH:
throw new RemoteServiceException((String)msg.obj);

2)http://openstorage.gunadarma.ac.id/android/sdk/sdk_310712/sources/android-15/android/app/ApplicationThreadNative.java

case SCHEDULE_CRASH_TRANSACTION:
        {
            data.enforceInterface(IApplicationThread.descriptor);
            String msg = data.readString();
            scheduleCrash(msg);
            return true;
        }

所以这个错误来自ApplicationThreadNative

您可以尝试提前跟踪,也许您会找到导致此错误的原因。