|
在Android中,我们可以使用SmsManager类来发送短信,以下是一个简单的示例:
zbhjldsm33mdn4i.jpg
(图片来源网络,侵删)
1、我们需要获取SmsManager实例:
SmsManager smsManager = SmsManager.getDefault();
2、我们可以设置短信的接收者、内容和发送者信息:
// 设置接收者号码
String phoneNumber = "1234567890";
// 设置短信内容
String message = "Hello World!";
// 设置发送者的电话号码,通常可以设置为应用程序的包名
String senderId = "com.example.myapp";
3、接下来,我们可以通过以下方式发送短信:
通过PendingIntent发送短信:
// 创建一个PendingIntent,用于启动一个BroadcastReceiver,该BroadcastReceiver会在短信发送后执行一些操作(例如显示一个Toast)
PendingIntent sentPI = PendingIntent.getBroadcast(this, 0, new Intent("SMS_SENT"), 0);
// 使用SmsManager发送短信,并设置PendingIntent
smsManager.sendTextMessage(phoneNumber, null, message, sentPI, null);
直接发送短信:
// 使用SmsManager直接发送短信,无需设置PendingIntent
smsManager.sendTextMessage(phoneNumber, null, message, null, null);
注意:由于安全原因,Android 6.0及以上版本的设备需要用户授予发送短信的权限,我们需要在AndroidManifest.xml文件中添加以下权限:
并在运行时请求权限:
if (ContextCompat.checkSelfPermission(thisActivity, Manifest.permission.SEND_SMS) != PackageManager.PERMISSION_GRANTED) {
ActivityCompat.requestPermissions(thisActivity, new String[]{Manifest.permission.SEND_SMS}, PERMISSION_REQUEST_CODE);
} else {
// 已经拥有权限,可以直接发送短信
} |
|