我创建了一个Android应用程序。现在我想通过它发送短信到一个真实的手机号码...有人可以帮助我。互联网上提供的信息是在两个仿真器之间发送消息。但我想在一个真实的手机号码上发送短信...请帮我解决。
答案 0 :(得分:1)
仿真器不是真正的手机,没有号码或SIM卡,因此无法从外部设备发送或接收短信。从cmd telnet,您可以使用短信发送电话号码
编辑:
private SmsMessage[] getMessagesFromIntent(Intent intent) {
SmsMessage msgs[] = null;
Bundle bundle = intent.getExtras();
try {
Object pdus[] = (Object[]) bundle.get("pdus");
msgs = new SmsMessage[pdus.length];
for (int n = 0; n < pdus.length; n++) {
byte[] byteData = (byte[]) pdus[n];
msgs[n] = SmsMessage.createFromPdu(byteData);
}
}
catch (Exception e) {
Logger.getDefault().error("Fail to create an incoming SMS from pdus", e);
}
return msgs;
}
答案 1 :(得分:1)
我认为你无法从模拟器向真实设备发送短信,因为它没有任何号码。我添加了下面的代码,这将有助于从真实设备发送短信。
PendingIntent pi = PendingIntent.getActivity(this, 0,
new Intent(this, RoadMoveActivity.class), 0);
SmsManager smsManager = SmsManager.getDefault();
smsManager.sendTextMessage(sms_phonenumber, null, sms_message, pi, null);
它为我工作
答案 2 :(得分:0)
请参阅此问题,了解如何在Android模拟器How can i configure gmail in Android emulator?中设置电子邮件帐户,然后使用以下代码发送电子邮件,
Intent email = new Intent(Intent.ACTION_SEND);
email.putExtra(Intent.EXTRA_EMAIL, new String[]{"youremail@yahoo.com"});
email.putExtra(Intent.EXTRA_SUBJECT, "subject");
email.putExtra(Intent.EXTRA_TEXT, "message");
email.setType("message/rfc822");
startActivity(Intent.createChooser(email, "Choose an Email client :"));