在Android中,我们可以使用SmsManager类来发送短信,而接收短信则需要使用广播接收器(BroadcastReceiver),以下是详细的步骤和代码示例。
1. 发送短信
我们需要在AndroidManifest.xml文件中添加发送短信的权限:
<usespermission android:name="android.permission.SEND_SMS" />
我们可以使用SmsManager类的sendTextMessage方法来发送短信:
SmsManager smsManager = SmsManager.getDefault(); smsManager.sendTextMessage(phoneNumber, null, message, null, null);
phoneNumber是接收短信的手机号码,message是要发送的短信内容。
2. 接收短信
我们需要在AndroidManifest.xml文件中添加接收短信的权限:
<usespermission android:name="android.permission.RECEIVE_SMS" />
我们需要创建一个广播接收器来接收短信:
public class SmsReceiver extends BroadcastReceiver { @Override public void onReceive(Context context, Intent intent) { Bundle bundle = intent.getExtras(); SmsMessage[] msgs = null; if (bundle != null) { Object[] pdus = (Object[]) bundle.get("pdus"); msgs = new SmsMessage[pdus.length]; for (int i = 0; i < msgs.length; i++) { msgs[i] = SmsMessage.createFromPdu((byte[]) pdus[i]); String sender = msgs[i].getOriginatingAddress(); String messageBody = msgs[i].getMessageBody(); // 在这里处理接收到的短信 } } } }
我们需要在AndroidManifest.xml文件中注册这个广播接收器:
<receiver android:name=".SmsReceiver"> <intentfilter> <action android:name="android.provider.Telephony.SMS_RECEIVED" /> </intentfilter> </receiver>
这样,我们就可以在SmsReceiver的onReceive方法中处理接收到的短信了。
本文来源于互联网,如若侵权,请联系管理员删除,本文链接:https://www.9969.net/6961.html