android 短信 数据,android – 如何发送和接收数据短信

本文详细介绍了如何在Android应用中实现接收短信(通过解析pdus和UserData)并利用SmsManager发送定制消息。展示了关键技术如SmsMessage和SmsManager的使用,适用于短信开发和Android应用通信部分。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

我知道这是1岁时我的回复,但我认为它仍然可以帮助某人.

接收:

Bundle bundle = intent.getExtras();

String recMsgString = "";

String fromAddress = "";

SmsMessage recMsg = null;

byte[] data = null;

if (bundle != null)

{

//---retrieve the SMS message received---

Object[] pdus = (Object[]) bundle.get("pdus");

for (int i=0; i

recMsg = SmsMessage.createFromPdu((byte[])pdus[i]);

try {

data = recMsg.getUserData();

} catch (Exception e){

}

if (data!=null){

for(int index=0; index

{

recMsgString += Character.toString((char)data[index]);

}

}

fromAddress = recMsg.getOriginatingAddress();

}

在Manifest中设置Receiver:

发送:

String messageText = "message!";

short SMS_PORT = 8901; //you can use a different port if you'd like. I believe it just has to be an int value.

SmsManager smsManager = SmsManager.getDefault();

smsManager.sendDataMessage("8675309", null, SMS_PORT, messageText.getBytes(), null, null);

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值