如何在收到短信时发送回复短信?

时间:2011-10-28 07:19:01

标签: java android gps sms android-manifest

我有一个应用程序,需要从一个用户发送短信到另一个用户。收到这个短信后,它会发回一个回复短信。我已经开发了一个代码,但问题是它是否一次又一次地从一个用户发送到例如,如果用户1向用户2发送了一些短信,那么短信会自动发送给用户1,用户1又会自动再次向用户2发送短信,这会一次又一次地发生。我怎么能避免这种情况?我只需要从用户2向用户1发送一次回复短信,然后不返回短信。请帮助我使用此代码。

这是我的代码:

http://pastebin.com/rt2Dd20k

提前致谢。

1 个答案:

答案 0 :(得分:1)

如果您知道自动短信回复将包含的确切文本,您是否只能在发送回复的块周围添加条件?

String autoReplyText = "Whats up";
boolean isAutoReply = msgs[i].getMessageBody().toString().equals(autoReplyText);

if (!isAutoReply) {
    sms.sendTextMessage(str2, null, autoReplyText, pi, null);
}

编辑:如果邮件是动态的(根据您的评论,它似乎需要),那么您可以确保所有自动回复都以特殊字符串标记开头,该标记将其标识为自动回复。这样,如果您收到以令牌开头的消息,则表示您无需回复​​:

String autoReplyToken = "[BANANA]";
String autoReplyText = autoReplyToken + " dynamic message content";

boolean isAutoReply = msgs[i].getMessageBody().toString().startsWith(autoReplyToken);

if (!isAutoReply) {
    sms.sendTextMessage(str2, null, autoReplyText, pi, null);
}