2012-07-06 9 views
6

l'avvio di un messaggio SMS intento (comporre testo precompilato) non funziona più per il nuovo sistema operativo Droid RAZR ICS. Ci sono altri modi per portare a termine questo compito?L'avvio di un messaggio SMS non funziona più per il nuovo sistema operativo Droid RAZR ICS

Ho provato sia:

Intent sendIntent = new Intent(Intent.ACTION_VIEW); 
    sendIntent.putExtra("sms_body", smsBody); 
    sendIntent.setType("vnd.android-dir/mms-sms"); 
    startActivity(sendIntent); 

provato Inoltre,

Uri.parse(uri); 

Il corpo del messaggio di testo non è pre-popolamento nel frattempo si comporta correttamente per tutti gli altri dispositivi e sistemi operativi al mio conoscenza.

risposta

1

Utilizzare ACTION_SENDTO con un smsto:Uri per il numero di telefono a cui si desidera inviare il messaggio.

Il tipo MIME in uso non è documentato e pertanto è soggetto a modifiche, a discrezione del team o dei produttori di dispositivi Android.

1

Mi sono imbattuto in questo problema e alla fine ho concluso che la stringa "sms_body" non è più applicabile in Android 4; viene invece utilizzato il tasto Intent.EXTRA_TEXT più logico.

String text = "Hello world"; 
    i = new Intent(Intent.ACTION_VIEW); 
    i.setData(Uri.parse("sms:")); 
    // i.setType("vnd.android-dir/mms-sms"); 
    i.putExtra(Intent.EXTRA_TEXT, text); 
    i.putExtra("sms_body", text); 
    startActivity(i); 

Questo codice sembra funzionare sia in 2.x Android e Android 4.0, anche se riesco a trovare alcuna documentazione che lo sostengono. Ho scelto di usare l'URI "sms:" piuttosto che usare un tipo mime, dal momento che il tipo mime sembra sfortunatamente non standardizzato.