android - 在android中接收和串联超过160个字符的短信

标签 android sms

我正在我的应用程序中开发一个短信接收器模块,在该模块中我通过我的应用程序接收短信,如果短信超过 160 个字符,我必须将该短信与其下一部分连接起来并显示它。目前我正在使用一个简单的接收器代码。请建议我执行此任务。

最佳答案

是的,尝试处理多部分消息:

@Override
        public void onReceive(Context context, Intent intent) {
                  Bundle bundle = intent.getExtras();
                  if (bundle != null) {
                   Object[] pdus = (Object[])bundle.get("pdus");
                   final SmsMessage[] messages = new SmsMessage[pdus.length];
                   for (int i = 0; i < pdus.length; i++) {
                      messages[i] = SmsMessage.createFromPdu((byte[])pdus[i]);
                    }
                       StringBuffer content = new StringBuffer();
                        if (messages.length > 0) {
                        for (int i = 0; i < messages.length; i++) {
                            content.append(messages[i].getMessageBody());
                              }
                          }
                         String mySmsText = content.toString();
                        }
                    }

                }

关于android - 在android中接收和串联超过160个字符的短信,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13598725/

相关文章:

ios - 在我的应用程序中发送短信

go - 带有到期日期代码的认证代码

android - 图像识别框架/指南-增强现实

android - 在来电时启动应用程序(android)

Android 不可离开的 Activity

android - java.lang.NoSuchMethodError : org. apache.http.impl.conn.tsccm.ThreadSafeClientConnManager

android - 如何每秒运行一个 Runnable 来更新 UI

android - 如何在 Spotify 和 Google Music 等后台播放音乐时关闭通知

android - 能否以编程方式获取运行 Android 6.0+ 的设备的 MAC 地址?

sql-server - 通过 SQL Server 2008 发送 SMS