📜  Android 发送短信示例(1)

📅  最后修改于: 2023-12-03 14:59:16.218000             🧑  作者: Mango

Android 发送短信示例

本篇文章将介绍如何在 Android 应用中发送短信,包括声明权限、编写代码以及演示如何测试该代码。

权限声明

在手机上发送短信需要申请相应权限,否则代码无法执行。在 AndroidManifest.xml 文件中添加以下权限声明:

<uses-permission android:name="android.permission.SEND_SMS" />
发送短信代码示例
/**
 * 发送短信到指定号码
 **/
public void sendSMS(String phoneNumber, String message) {
    SmsManager smsManager = SmsManager.getDefault();
    PendingIntent sentIntent = PendingIntent.getBroadcast(this, 0, new Intent("SMS_SENT"), 0);
    PendingIntent deliveryIntent = PendingIntent.getBroadcast(this, 0, new Intent("SMS_DELIVERED"), 0);
    ArrayList<String> msgArray = smsManager.divideMessage(message);
    for (String msg : msgArray) {
        smsManager.sendTextMessage(phoneNumber, null, msg, sentIntent, deliveryIntent);
    }
}

在上述方法中,我们使用 SmsManager 来发送短信,其中 divideMessage 方法可以保证短信长度不超过限制。 PendingIntent 分别用于指定短信是否被成功发送和接收。

测试发送短信代码

我们可以通过编写简单的 UI 来测试上述发送短信代码。示例代码如下:

button.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View v) {
        sendSMS(phoneNumber, message);
    }
});

其中 button 为发送按钮,phoneNumbermessage 为输入的号码和短信内容。

现在我们已经了解了如何在 Android 应用程序中发送短信。你也可以根据自己的需求来调整发送短信代码。