2014-12-11 22 views
17

Attualmente mi inviare SMS da questo comando:inviare SMS tramite adb shell di servizio di chiamata ismi Android 4.1.2

servizio adb shell chiamata ismi 6 S16 I32 "phoneNumber" 0 I32 0 S16 "smstext"

in Android 2.3.6 e funziona perfettamente.

Ora voglio utilizzare lo stesso comando in Android 4.1.2, ma quando invio il comando che ho ricevuto questa uscita in Logcat

> 12-11 14:17:37.97 1626-2182/? D/PhoneRestrictionPolicy﹕ SmsRestrictionPolicy.canOutgoingSms >>>> 

qualcuno mi può aiutare a rimuovere questo "SmsRestrictionPolicy" per favore?

Grazie

+0

Hai provato questo? http://stackoverflow.com/questions/4043490/how-do-i-send-an-sms-from-a-shell – Phil

+0

Possibile duplicato di [Invio di un SMS su Android tramite ADB] (https://stackoverflow.com)/questions/17580199/sending-a-sms-on-android-through-adb) – Taknok

risposta

2

Citando this post:

adb shell am start -a android.intent.action.SENDTO -d sms:CCXXXXXXXXXX --es sms_body "SMS BODY GOES HERE" --ez exit_on_sent true 
adb shell input keyevent 22 
adb shell input keyevent 66 

Dove CCXXXXXXXXXX è country-code seguito dal numero di telefono. Questo potrebbe non funzionare correttamente su installazioni Android non standard, dovrai trovare i valori keyevent corretti da trasmettere.


Da commenti su this post sembra che l'invio via service call isms, come indicato nella domanda, non è possibile (anche se Sono pronto a scommettere che è possibile se la vostra applicazione è impostato come applicazione predefinita SMS per il dispositivo).


Un work-around per l'invio di uno SMS senza l'interazione dell'utente potrebbe essere quella di inviare il numero e il messaggio a un server che invia messaggi SMS. Probabilmente esiste già uno strumento di terze parti per questo. A colpo d'occhio, this può essere utile.

0

Provare con i comandi telnet e sms send.

Ulteriori informazioni here.

1

mio ambiente:

  • Android 4.1.2
  • MIUI ROM

si può provare questo.

Passare all'applicazione utente messaggio prima del comando service call isms ...

su u0_a34 \
ismi chiamata di servizio 5 s16 "10086" i32 0 i32 0 S16 "11"

u0_a34 è il nome utente dell'applicazione messaggio.

+0

Grazie ho intenzione di provarlo – AlejandroQH

0

Non ha funzionato perché in Android 4.1.2 il numero di isms è 5 e non 6. Quindi è:

adb shell service call isms 5 s16 "com.android.mms" s16 "" s16 "+01000000000" s16 "Hello world !" i32 0 i32 0 

Si potrebbe verificare come si fa per qualsiasi versione di Android qui: link

Problemi correlati