SMS管理器正在发送多个短信

时间:2015-06-01 16:00:58

标签: java android smsmanager

private void sendSMS(String phoneNumber, String message)
{
        PendingIntent pi = PendingIntent.getActivity(this, 0,
                new Intent(this, MainActivity.class), 0);
        SmsManager sms = SmsManager.getDefault();
        sms.sendTextMessage(phoneNumber, null, message, pi, null);

}

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    String msg = "some text";
    sendSMS("xxxxxxxxx", msg);
}

我有上面的代码。问题是,当我运行应用程序时,它会一个接一个地发送一条消息。如何让它发送一个只有一个短信?

1 个答案:

答案 0 :(得分:0)

我认为这是在你的MainActivity课程中。 当您发送PendingIntent时,您将其发送到同一活动。然后重新创建活动并再次调用onCreate

如果您确实想要在onCreate中发送短信,请将意图发送到另一个活动。否则,创建一个按钮并在按钮的onClick事件中发送短信。