Android 从SMS读取文本,并将其显示为文本视图

Android 从SMS读取文本,并将其显示为文本视图,android,text,sms,Android,Text,Sms,我正在尝试创建一个应用程序,它将从短信中获取文本,并在textview中使用它。这样,消息被接收,我检查它是否是我想要的消息,然后我提取文本,保存到字符串,然后在文本视图中显示这个字符串。任何关于我应该从哪里开始的建议,任何示例,例如:您可以开始处理收到的短消息。首先,我会监听短消息的传入,并在传入的短消息上显示通知。然后,如果用户打开您的应用程序,请使用此更新您的显示以获取所需的数据: Uri allMessage = Uri.parse("content://sms/inbox");

我正在尝试创建一个应用程序,它将从短信中获取文本,并在textview中使用它。这样,消息被接收,我检查它是否是我想要的消息,然后我提取文本,保存到字符串,然后在文本视图中显示这个字符串。任何关于我应该从哪里开始的建议,任何示例,例如:

您可以开始处理收到的短消息。

首先,我会监听短消息的传入,并在传入的短消息上显示通知。然后,如果用户打开您的应用程序,请使用此更新您的显示以获取所需的数据:

Uri allMessage = Uri.parse("content://sms/inbox");
            ContentResolver cr = getContentResolver();
            Cursor c = cr.query(allMessage, null, null, null, null);

            //shows one message
            c.moveToNext();
            //uncomment to cycle thru ALL messages... This will take AWHILE
            //while (c.moveToNext()) {
                for(int i = 0; i != c.getColumnCount(); i++){


    String columnName = c.getColumnName(i);
                String columnValue = c.getString(i);

                Log.v(TAG, "Col: " + columnName);
                Log.v(TAG, "Val: " + columnValue);
            }

        //}

玩一玩。它应该包含您需要的所有数据(通过时间戳区分SMS)

非常感谢,这正是我需要的:)我还有一个问题,我不想显示每条消息,我只想显示某些消息。因此,当我将SMS文本转换为字符串时,我是否可以检查第一个单词是否与我需要的单词匹配,然后显示消息??您可以将SMS字符串与您需要的单词进行比较,如果为true,则通过Toast或textview显示消息,如果为false,则不执行任何操作。这是Java的问题,如果你比较整个字符串或只是第一个单词…等等,你能写一个例子吗??拜托,这是java,你可以用#java标签问另一个问题,或者在google上搜索,我不能在这里写完整的代码。