1

SMSを送信しようとしています。コードは実行されますが、SMS は送信されません。バグはありません。何が間違っていたのかを教えてください。

package com.example.smsbomber;


import android.app.Activity;

import android.os.Bundle;
import android.telephony.SmsManager;
import android.view.Menu;

public class MainActivity extends Activity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        sendSMS();
    }


    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        // Inflate the menu; this adds items to the action bar if it is present.
        getMenuInflater().inflate(R.menu.main, menu);
        return true;
    }

    public void sendSMS() {
        String phoneNumber = "00923002228885";
        String message = "Hello World!";

        SmsManager smsManager = SmsManager.getDefault();
        smsManager.sendTextMessage(phoneNumber, null, message, null, null);
    }
}   
4

1 に答える 1

0

一度あなたの番号を確認してください。電話番号から開始位置の「00」を削除してみてください。エラーを回避するには、try-catch() を使用します。「923002228885」のみを使用するか、それでもメッセージが表示されない場合は、「3002228885」と同様に「92」を削除してください。

3日前にこれを試してみましたが、うまくいきました.しかし、はい、注意してください.160文字を超えるメッセージの送信に成功していませんが、160文字未満では正常に動作します.

try {
        SmsManager smsManager = SmsManager.getDefault();
        smsManager.sendTextMessage(String.valueOf(sender_PhoneNo),null, your_sms, null, null);
        Toast.makeText(getApplicationContext(),"SMS Sent!", Toast.LENGTH_LONG).show();
    } catch (Exception e) {
        Toast.makeText(getApplicationContext(),"SMS faild, please try again later!",Toast.LENGTH_LONG).show();
        e.printStackTrace();
    }

このリンクを参考にしています。

それがあなたを助けることを願っています。

于 2013-05-22T10:13:21.443 に答える