我从某个网站获得此代码。但是,它对我不起作用。我没有错误,但没有发送消息。我已添加适当的权限以及所需的包和有效数字。
public void sendSMS() {
String phoneNumber = "0123456789";
String message = "Hello World!";
SmsManager smsManager = SmsManager.getDefault();
smsManager.sendTextMessage(phoneNumber, null, message, null, null);
}
我应该用其他东西替换那些 null 参数,以使其有效吗?
这是我得到它的地方:http://www.codeproject.com/Articles/463338/Sending-a-SMS-Message-from-an-Android-Application
答案 0 :(得分:1)
import android.telephony.SmsManager;
然后在您的活动中
String phoneNumber = "0123456789";
String message = "Hello World!";
SmsManager smsManager = SmsManager.getDefault();
smsManager.sendTextMessage(phoneNumber, null, message, null, null);
在清单文件中添加权限
<uses-permission android:name="android.permission.SEND_SMS" />
答案 1 :(得分:1)
我已经解决了你的问题,我也在我的设备中测试过它,并且还使用了两个模拟器。
首先,您需要在AndroidManifest.xml文件中授予权限。这些是:
<uses-permission android:name="android.permission.READ_PHONE_STATE"/>
<uses-permission android:name="android.permission.SEND_SMS"/>
之后你把代码放在这里:
public void sendSMS()
{
String phoneNumber = "0123456789";
String message = "Hello World!";
SmsManager smsManager = SmsManager.getDefault();
smsManager.sendTextMessage(phoneNumber, null, message, null, null);
Toast.makeText(getApplicationContext(), "SMS Send"+message, Toast.LENGTH_SHORT).show();
}
答案 2 :(得分:0)
启动短信:
Intent intentsms = new Intent(Intent.ACTION_VIEW, Uri.parse("sms:"
+ ""));
intentsms
.putExtra(
"sms_body",
"SMS text ololo");
this.startActivity(intentsms);
答案 3 :(得分:0)
调用以下方法
private void sendMessage(String phoneNumber) {
try {
if (phoneNumber != null) {
Intent smsIntent = new Intent(Intent.ACTION_VIEW);
smsIntent.setType("vnd.android-dir/mms-sms");
smsIntent.putExtra("address", phoneNumber);
startActivity(smsIntent);
} else {
// Display mobile error
}
} catch (Exception e) {
// Display error sending message
}
}
<强>权限强>
<uses-permission android:name="android.permission.SEND_SMS" />