在我的应用程序中,我不想使用默认消息发件人。为此,我点击了以下链接 In Android is it possible to send sms message to more than one recipient in code?
- 而且该代码也有效。但是我从这里发送的消息 代码不会保存在手机的发件箱和收件箱中。
我在我的代码中使用这样的短信管理器
SmsManager sms = SmsManager.getDefault(); sms.sendTextMessage(phoneNumber, null, message, null, null);
但它不发送短信。请帮助我如何在 android 中发送短信 - 我也试过跟随 PendingIntent sentPI = PendingIntent.getBroadcast(this, 0, new Intent( 发送), 0);
PendingIntent deliveredPI = PendingIntent.getBroadcast(this, 0,
new Intent(DELIVERED), 0);
SmsManager sms = SmsManager.getDefault();
sms.sendTextMessage(phoneNumber, null, message, sentPI, deliveredPI);
它也不起作用。
SMSAPPActivity.java
编辑:
btnSendSMS.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
String message = txtMessage.getText().toString();
String[] PhnNoArray = new String[2];
PhnNoArray[0] = "9999999999";
PhnNoArray[1] = "8888888888";
// StringTokenizer st = new StringTokenizer(phoneNo, ",");
smsManager = SmsManager.getDefault();
for (int i = 0; i < PhnNoArray.length; i++) {
smsManager = SmsManager.getDefault();
// this is the function that does all the magic
// sms.sendTextMessage(phoneNumber, null, msg, pi, null);
smsManager.sendTextMessage(PhnNoArray[i], null, message, null,
null);
Toast.makeText(getBaseContext(), "SMS sent : " + i,
Toast.LENGTH_SHORT).show();
}
}
});
请查看编辑并告诉我我做错了什么。tost 正在显示,但使用此代码在其他手机上未收到短信
最佳答案
如果您使用的是双卡设备,那么您必须提及发件人号码,此时您不能传递 null。否则,SmsManager 将抛出一个名为 SmsManager.RESULT_ERROR_GENERIC_FAILURE
的错误。
检查活跃模拟人生数量的代码:
public static int getNumberOfActiveSim(Context context) {
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP_MR1) {
SubscriptionManager subscriptionManager = SubscriptionManager.from(context);
List<SubscriptionInfo> subscriptionInfo = subscriptionManager.getActiveSubscriptionInfoList();
return subscriptionInfo != null ? subscriptionInfo.size() : 0;
}
TelephonyManager telephonyManager = (TelephonyManager) context.getSystemService(Context.TELEPHONY_SERVICE);
if(telephonyManager != null && telephonyManager.getSimState() == TelephonyManager.SIM_STATE_ABSENT){
return 1;
}
return 0;
}
关于android - 无法在 Android 中使用 SMSManager 发送短信,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8998655/