1. ホーム
  2. android

メッセージアプリを開かずにプログラムでSMSを送信する

2023-10-16 22:07:50

質問

今のところ、私のアプリを通して他の電話にSMSを送信するために、以下のコードを使用しています。

Intent intent = new Intent( Intent.ACTION_VIEW, Uri.parse( "sms:" + srcNumber)); 
                    intent.putExtra( "sms_body", message ); 
                    startActivity(intent);

しかし、これはネイティブのメッセージングアプリを開くので、私のアプリの活動はバックグラウンドになります。SMSを送信することは可能ですか? を直接 SMSを送信することは可能でしょうか?可能な場合、どのようにすればよいですか?

どのように解決するのですか?

アプリケーションからメッセージを送信することができます。

public void sendSMS(String phoneNo, String msg) {
    try {      
        SmsManager smsManager = SmsManager.getDefault();
        smsManager.sendTextMessage(phoneNo, null, msg, null, null);    
        Toast.makeText(getApplicationContext(), "Message Sent",
                Toast.LENGTH_LONG).show();
    } catch (Exception ex) {
        Toast.makeText(getApplicationContext(),ex.getMessage().toString(),
                Toast.LENGTH_LONG).show();
        ex.printStackTrace();
    } 
}

また SEND_SMS に許可を与える必要があります。 AndroidManifest.xml メッセージの送信

<uses-permission android:name="android.permission.SEND_SMS" />