嘿我正在开发一个发送和接收短信的Android应用程序,我试图找到一种方法来删除与应用程序相关的文本消息。我在几个帖子中遇到了abortBroadcast()方法,并决定尝试一下。我在if语句的各种树中放置了几个abortBroadcast()调用(不同的文本会导致不同的操作)。
在我从应用程序发送了自己的文本后,我没有收到它。所以我想我可能用abortBroadcast命令过度杀死了它。但即使我从我的代码中删除了所有这些,甚至从我的手机上卸载了应用程序,并重新启动了手机,我仍然无法收到任何短信!发送工作正常,但我不能再得到任何文本了。我收到文本后得到的错误在下面全部列出。
05-13 16:08:04.015: E/SMSDispatcher(731): Exception dispatching message
05-13 16:08:04.015: E/SMSDispatcher(731): java.lang.ArrayIndexOutOfBoundsException
05-13 16:08:04.015: E/SMSDispatcher(731): at com.android.internal.telephony.SMSDispatcher.processMessagePart(SMSDispatcher.java:970)
05-13 16:08:04.015: E/SMSDispatcher(731): at com.android.internal.telephony.gsm.GsmSMSDispatcher.dispatchMessage(GsmSMSDispatcher.java:307)
05-13 16:08:04.015: E/SMSDispatcher(731): at com.android.internal.telephony.SMSDispatcher.handleMessage(SMSDispatcher.java:523)
05-13 16:08:04.015: E/SMSDispatcher(731): at android.os.Handler.dispatchMessage(Handler.java:99)
05-13 16:08:04.015: E/SMSDispatcher(731): at android.os.Looper.loop(Looper.java:130)
05-13 16:08:04.015: E/SMSDispatcher(731): at android.app.ActivityThread.main(ActivityThread.java:3859)
05-13 16:08:04.015: E/SMSDispatcher(731): at java.lang.reflect.Method.invokeNative(Native Method)
05-13 16:08:04.015: E/SMSDispatcher(731): at java.lang.reflect.Method.invoke(Method.java:507)
05-13 16:08:04.015: E/SMSDispatcher(731): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:839)
05-13 16:08:04.015: E/SMSDispatcher(731): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:597)
05-13 16:08:04.015: E/SMSDispatcher(731): at dalvik.system.NativeStart.main(Native Method)
如何在手机中修复此错误!?为了记录,上面列出的这些错误都不是来自我的代码,所有代码都是Android OS的东西。如果没有人知道怎么做,你知道我可以联系谁来获得这方面的帮助吗?我真的不想重置手机......
答案 0 :(得分:1)
只需尝试:
clearAbortBroadcast()
这将清除您使用中止设置的标志。
请点击此处了解更多信息: http://developer.android.com/reference/android/content/BroadcastReceiver.html