📜  Android-发送短信(1)

📅  最后修改于: 2023-12-03 15:29:22.458000             🧑  作者: Mango

Android-发送短信

在Android应用程序开发中,短信发送是非常常见的功能。本篇文章将介绍如何在Android应用程序中发送短信。笔者将从权限配置、短信发送、异常处理三个方面来分别进行介绍。

权限配置

在AndroidManifest.xml文件中添加以下权限:

<uses-permission android:name="android.permission.SEND_SMS"/>
短信发送

使用SmsManager类来发送短信。下面是一个简单的示例:

try {
    SmsManager smsManager = SmsManager.getDefault();
    smsManager.sendTextMessage(phoneNumber, null, message, null, null);
    Toast.makeText(MainActivity.this, "短信发送成功", Toast.LENGTH_SHORT).show();
} catch (Exception e) {
    Toast.makeText(MainActivity.this, "短信发送失败", Toast.LENGTH_SHORT).show();
    e.printStackTrace();
}
  • phoneNumber参数:接收短信的手机号码。
  • message参数:短信内容。
异常处理

在短信发送的过程中,可能会出现一些异常,例如手机号码不正确、短信内容为空等。为了保证程序的稳定性,我们需要进行一些异常处理。示例代码如下:

try {
    SmsManager smsManager = SmsManager.getDefault();
    smsManager.sendTextMessage(phoneNumber, null, message, null, null);
    Toast.makeText(MainActivity.this, "短信发送成功", Toast.LENGTH_SHORT).show();
} catch (IllegalArgumentException e) {
    Toast.makeText(MainActivity.this, "手机号码不正确", Toast.LENGTH_SHORT).show();
    e.printStackTrace();
} catch (SecurityException e) {
    Toast.makeText(MainActivity.this, "应用程序没有发送短信的权限", Toast.LENGTH_SHORT).show();
    e.printStackTrace();
} catch (NullPointerException e) {
    Toast.makeText(MainActivity.this, "短信内容为空", Toast.LENGTH_SHORT).show();
    e.printStackTrace();
} catch (Exception e) {
    Toast.makeText(MainActivity.this, "短信发送失败", Toast.LENGTH_SHORT).show();
    e.printStackTrace();
}

以上代码中,通过捕获不同的异常类型,进行相应的处理。

至此,Android应用程序中发送短信的代码就介绍完了。