Я застрял в течение долгого времени и не могу его решить. Пожалуйста, помогите ... Я пытаюсь отправить sms программно с устройства Android. Я могу успешно отправлять с многих устройств, но не могу с некоторыми устройствами Samsung с двумя SIM-картами с уровнем авиалинии Android> = 22. Для уровня апи> = 22 я закодированы как,СМС, не отправляющий с некоторого двойного сим-устройства андроида программно
public static final String SMS_SENT_ACTION = "package.name.app.SMS_SENT_ACTION";
registerReceiver(new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
unregisterReceiver(this);
String message = null;
switch (getResultCode()) {
case Activity.RESULT_OK:
message = "Message Sent Successfully !";
break;
case SmsManager.RESULT_ERROR_GENERIC_FAILURE:
message = "Error.";
sendDefaultMessage(default_number, default_send_number, text);
break;
case SmsManager.RESULT_ERROR_NO_SERVICE:
message = "Error: No service.";
sendDefaultMessage(default_number, default_send_number, text);
break;
case SmsManager.RESULT_ERROR_NULL_PDU:
message = "Error: Null PDU.";
sendDefaultMessage(default_number, default_send_number, text);
break;
case SmsManager.RESULT_ERROR_RADIO_OFF:
message = "Error: Radio off.";
sendDefaultMessage(default_number, default_send_number, text);
break;
}
Toast.makeText(GetAppointment.this, message, Toast.LENGTH_LONG).show();
}
}, new IntentFilter(SMS_SENT_ACTION));
SmsManager.getSmsManagerForSubscriptionId(subscription_id).sendTextMessage(send_number, null, messageToSend, PendingIntent.getBroadcast(
this, 0, new Intent(SMS_SENT_ACTION), 0), null);
Там нет разрешения, связанные проблемы, потому что смс можно отправить с ASUS Dual Sim устройства и сони одном устройстве сим с уровнем апи> = 22.
Как я могу заставить его работать на всех устройствах? Мне нужна помощь.
это будет полезно для вас http://stackoverflow.com/questions/27351936/how-to-send-a-sms-using-smsmanager-in-dual-sim -mobile – sasikumar
Я следил за этим примером - SmsManager.getSmsManagerForSubscriptionId (int subscriptionId) .sendTextMessage (String destinationAddress, String scAddress, String text, PendingIntent sentIntent, PendingIntent deliveryIntent); – Exigente05