SMS Manager para teléfonos Dual Sim?

Estoy trabajando con el encargado de SMS para enviar sms en android. El código que estoy utilizando es como abajo:

private void sendSms(String Phnno, String Message) { if (Utils.checkSIM(MyActivity.this)) { SmsManager smsManager = SmsManager.getDefault(); smsManager.sendTextMessage(Phnno, null, Message, null, null); Utils.showMessage(MyActivity.this,"","Thank You for your interest,please check your inbox for the results."); } else { showErrorMessage(MyActivity.this, "SIM Error!", "Please insert SIM"); } } 

Este código funciona para mí perfectamente en los teléfonos de un solo sim, pero cuando compruebo esto en los teléfonos de doble sim estoy recibiendo la advertencia siguiente y SMS nunca envía.

 01-11 15:56:13.664: W/sendTextMessage(6656): use single sim interface to sendTextMessage by double sim interface 

Por favor, sugiera cómo puedo lograrlo en mi teléfono dual sim. Gracias de antemano.

sendTextMessage() tiene el parámetro scAddress . Esto se utiliza para definir la dirección del centro SMS. Creo que si lo configura correctamente, podrá enviar un mensaje.

Usted puede encontrar el número siguiendo este tutorial: http://algorithmic-indian.blogspot.hu/2011/03/how-to-change-message-center-number-in.html Usted puede probar esto, así como obtener El número smsc de un teléfono en android? Al parecer, no parece ser una forma de obtener el número de forma programática.

Esto funcionará para ambos escenarios. Si ya se ha seleccionado el usuario por defecto el sim tomará automáticamente eso y goto al siguiente proceso, De lo contrario mientras chasca encendido el botón del envío pedirá la confirmación para elegir cualquier sim para enviar los sms. Hemos probado su trabajo bien.

Código fuente de la muestra:

 try { Intent sendIntent = new Intent(Intent.ACTION_VIEW); sendIntent.putExtra("sms_body","Body"); sendIntent.putExtra("address", "PhoneNumber"); sendIntent.setType("vnd.android-dir/mms-sms"); startActivity(sendIntent); } catch (Exception e) { Toast.makeText(getApplicationContext(),"SMS faild, please try again later!",Toast.LENGTH_SHORT).show(); e.printStackTrace(); } 
FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.