Ehi, ho creato un'app per Android che deve inviare un messaggio di testo. Ecco il codice corrente che ho:Invio di un SMS in Android
public class getMessage extends Service {
@Override
public IBinder onBind(Intent intent) {
return null;
}
@Override
public void onStart(Intent intent, int startId) {
super.onStart(intent, startId);
client Phone = new client();
String[] msg = Phone.getMsg(user[0],user[1]);
PendingIntent pi = PendingIntent.getActivity(this, 0, new Intent(this, getMessage.class), 0);
SmsManager man = SmsManager.getDefault();
Log.e("GOT MESSAGE", msg[0]+ " : " +msg[1]);
man.sendTextMessage(msg[0], null, msg[1], pi, null);
Log.e("Message", "Sent the message?");
}
Ora, per qualche ragione, il messaggio di testo non trasmetteremo usi questo codice, e io non sono sicuro perché. Speravo che qualcuno qui potesse aiutarmi a scoprire perché questo messaggio non verrà inviato.
Nessun errore viene generato, non viene visualizzato nulla nel registro (tranne che per i messaggi di registro che mi inserisco nel codice). Inoltre, il manifest ha i tag corretti.
Suggerimenti?
FWIW, ecco un progetto di esempio che funziona, ma è da un'attività, non da un servizio: https://github.com/commonsguy/cw-advandroid/tree/master/SMS/Sender – CommonsWare
Che cosa fa Phone. getMsg (utente [0], utente [1]) restituisce? Hai provato questo su un dispositivo o un emulatore? Inoltre, i nomi delle classi dovrebbero sempre iniziare con una lettera maiuscola (GetMessage not getMessage). – elevine
Phone.getMessage riceve il messaggio che ha ricevuto ... e getMessage è un metodo, non una classe, sebbene la mia classe client debba essere in maiuscolo ... – D4N14L