我正在创建一个短信应用程序来发送和接收短信。
我可以使用以下代码发送短信:
SmsManager sms = SmsManager.getDefault();
sms.sendTextMessage(phoneNumber, null,message , pi, null);
我想接收短信并将其放入我自己的收件箱中。如何创建这个收件箱?我希望它的工作方式与普通收件箱相同。
Bundle bundle = intent.getExtras();
Object[] pdus = (Object[]) bundle.get("pdus");
SmsMessage[] messages = new SmsMessage[pdus.length];
for (int i = 0; i < messages.length; i++) {
messages[i] = SmsMessage.createFromPdu((byte[])pdus[i]);
Log.v("SMSFun","Body: " + messages[i].getDisplayMessageBody());
Log.v("SMSFun","Address: " + messages[i].getDisplayOriginatingAddress());
//If say we wanted to do something based on who sent it
if (messages[i].getDisplayOriginatingAddress().contains("5556")) {
// we could launch an activity and pass the data
Intent newintent = new Intent(ctx, SecretMessage.class);
newintent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
newintent.putExtra("address", messages[i].getDisplayOriginatingAddress());
newintent.putExtra("message", messages[i].getDisplayMessageBody());
ctx.startActivity(newintent);
}
}
如何将收到的短信存储在收件箱中?
Android 是否可以监听 SMS 的特定端口号?
我不认为你可以将短信放在不同的收件箱中,并且你不会监听端口来获取短信,你使用的是BroadcastReceiver
.
我建议您通过开源smspopup应用程序可以更好地了解短信的一般工作原理。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)