getDisplayMessageBody() 抛出了异常
SmsMessage[] messages = new SmsMessage[myOBJpdus.length]; if (messages.length < 1 ) { LogText(context,"ERR: messages.length=" + messages.length ); return; } LogText(context,"DEBUG: messages.length=" + messages.length ); for (int i = 0; i < messages.length; i++) { // 通过SmsMessage.createFromPdu()方式取出短信文字 messages[i] = SmsMessage .createFromPdu((byte[]) myOBJpdus[i]); if (messages[i] == null ){ LogText(context,"ERR: messages[" + i + "] is null" ); return; } } int i = 0; for (SmsMessage currentMessage : messages) { if ( currentMessage == null) { LogText(context,"msg[ " + i +"] null"); return; } else { String msg = currentMessage.getDisplayMessageBody(); //与 currentMessage.getMessageBody() 有什么区别? if ( msg == null){ LogText(context,"ERR: msg[" + i +"].Body() null"); return; } else { LogText(context,"DEBUG: msg[" + i +"].Body()=" + msg ); sb.append(currentMessage.getDisplayMessageBody());// 短信内容 } } i++; }
接收短信模块代码,但其中 getDisplayMessageBody() 遇到长短信,会抛出异常。
函数说明并没有提到会抛出异常,而是说没有内容时,输出 null。
怎样才能避免抛出异常啊?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
在网上找到这么一段,不知道能否帮到你
这东西是哪个项目的?是 Android ?