Autore Topic: Problema con invio SMS  (Letto 1716 volte)

Offline Christian Giupponi

  • Utente junior
  • **
  • Post: 128
  • Respect: 0
    • Google+
    • http://it.linkedin.com/pub/christian-giupponi/29/628/810
    • ultimoprofeta
    • Mostra profilo
  • Dispositivo Android:
    Galaxy Nexus
  • Play Store ID:
    ItalianDevTeam
  • Sistema operativo:
    Mac OSX Lion
Problema con invio SMS
« il: 30 Maggio 2011, 21:09:31 CEST »
0
Ciao,
ho un prblema con la mia applicazione.
Praticamente devo fare in modo che alla pressione di un Button venga invato un messaggio pre-impostato.
Ho quindi creato questo metodo:

Codice (Java): [Seleziona]
public void invia(String numero, String mess){
           PendingIntent pi = PendingIntent.getActivity(this, 0,
                    new Intent(this, SMS.class), 0);                
                SmsManager sms = SmsManager.getDefault();
                sms.sendTextMessage(numero, null, mess, pi, null);
            String sent = getString(R.string.inviato);
            Toast.makeText(this, sent, Toast.LENGTH_LONG).show();
            torna();
        }

Il metodo torna non fa altro che tornare all'activity precedente dove è visibile il Button, il metodo è questo:

Codice (Java): [Seleziona]
public void torna(){
                Intent intent = new Intent(this, Main.class);
                intent.setFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP);
                intent.setFlags(Intent.FLAG_ACTIVITY_NO_HISTORY);
                startActivity(intent);
        }

Il problema è che sull'emulatore va tutto bene ma quando lo installo sul dispositivo fisico il messaggio viene inviato in continuazione...sapete dirmi cosa ho sbagliato?
Conoscete un metodo migliore per inviare un SMS?
« Ultima modifica: 30 Maggio 2011, 21:11:14 CEST da ultimoprofeta »

Offline gsources75

  • Utente normale
  • ***
  • Post: 327
  • Respect: +9
    • Google+
    • pepigno75
    • devandroid_it
    • Mostra profilo
  • Dispositivo Android:
    Samsung Galaxy Nexus S - Vodafone Smart -BB Bold- Iphone 4-
  • Play Store ID:
    Giuseppe+Sorce
  • Sistema operativo:
    Ubuntu-Windows Seven- Mac Lion
Re:Problema con invio SMS
« Risposta #1 il: 31 Maggio 2011, 09:31:35 CEST »
+1
Io ho fatto un metodo molto semplice cosi:
Codice (Java): [Seleziona]
protected void sendSms() {
               

                String phoneNo = "34567800";
                String message = "Ciao come va ? Che fai ?";
                Uri uri = Uri.parse("smsto:"+phoneNo);  
                Intent it = new Intent(Intent.ACTION_SENDTO, uri);  
                it.putExtra("sms_body", message);  
                startActivity(it);     

        }

Invio il messaggio solo una volta e senza aprire nessuna Activity visibile almeno...

La domanda stupida è quella che non si fa

Offline Christian Giupponi

  • Utente junior
  • **
  • Post: 128
  • Respect: 0
    • Google+
    • http://it.linkedin.com/pub/christian-giupponi/29/628/810
    • ultimoprofeta
    • Mostra profilo
  • Dispositivo Android:
    Galaxy Nexus
  • Play Store ID:
    ItalianDevTeam
  • Sistema operativo:
    Mac OSX Lion
Re:Problema con invio SMS
« Risposta #2 il: 31 Maggio 2011, 18:17:47 CEST »
0
Grazie mille!!

Offline bobo78

  • Utente junior
  • **
  • Post: 55
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    nexus one
  • Sistema operativo:
    Win XP
Re:Problema con invio SMS
« Risposta #3 il: 20 Giugno 2011, 11:18:47 CEST »
0
Ciao a tutti, mi attacco a questo thread per un problema analogo.

Ho provato ad implementare la funzione "sendSms()" qui riportata e funziona egregiamente, solo che richiama l'applicazione di messaggistica di default del telefono, ne compila i campi e attende che l'utente prema il tasto "invia".
Io vorrei mandare l'sms senza che l'utente debba fare niente. Ad esempio premendo un pulsante, l'invio dell'sms avviene in automatico.

Secondo voi e' possibile? Avete qualche codice di esempio?

Grazie


Ho risolto cosi':
Codice: [Seleziona]
protected void sendSms() {
           
            SmsManager sms = SmsManager.getDefault();
           
            String message = "Prova!";       
           
            String recipient = "3471234567";
           
            sms.sendTextMessage(recipient, null, message, PendingIntent.getBroadcast(
                    SendSMS.this, 0, new Intent(ACTION_SMS_SENT), 0), null);
       
           
    }

« Ultima modifica: 20 Giugno 2011, 11:59:23 CEST da bobo78, Reason: Trovato soluzione »

Offline dart760

  • Nuovo arrivato
  • *
  • Post: 3
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    Samsung Galaxy s2
  • Sistema operativo:
    debian6
Re:Problema con invio SMS
« Risposta #4 il: 31 Agosto 2011, 19:13:50 CEST »
0
Ciao a tutti, mi attacco a questo thread per un problema analogo.

Ho provato ad implementare la funzione "sendSms()" qui riportata e funziona egregiamente, solo che richiama l'applicazione di messaggistica di default del telefono, ne compila i campi e attende che l'utente prema il tasto "invia".
Io vorrei mandare l'sms senza che l'utente debba fare niente. Ad esempio premendo un pulsante, l'invio dell'sms avviene in automatico.

Secondo voi e' possibile? Avete qualche codice di esempio?

Grazie


Ho risolto cosi':
Codice: [Seleziona]
protected void sendSms() {
           
            SmsManager sms = SmsManager.getDefault();
           
            String message = "Prova!";       
           
            String recipient = "3471234567";
           
            sms.sendTextMessage(recipient, null, message, PendingIntent.getBroadcast(
                    SendSMS.this, 0, new Intent(ACTION_SMS_SENT), 0), null);
       
           
    }

Ciao, scusa la mia ignoranza... vorrei usare il tuo metodo per lo stesso motivo, ovvero non dover premere invia...
quando provo ad implementarlo però mi da problemi su: ACTION_SMS_SENT  eclipse mi chiede di creare la costante poichè non trova il riferimento... e non ne vengo a capo... sicuramente sono un pirla io...

Offline Christian Giupponi

  • Utente junior
  • **
  • Post: 128
  • Respect: 0
    • Google+
    • http://it.linkedin.com/pub/christian-giupponi/29/628/810
    • ultimoprofeta
    • Mostra profilo
  • Dispositivo Android:
    Galaxy Nexus
  • Play Store ID:
    ItalianDevTeam
  • Sistema operativo:
    Mac OSX Lion
Re:Problema con invio SMS
« Risposta #5 il: 03 Settembre 2011, 09:48:40 CEST »
0
Dovresti mettere il codice, anche se però mi sembra strano che non te la riconosca...hai provato a riavviare eclipse?

Offline Ricky`

  • Amministratore
  • Utente storico
  • *****
  • Post: 3487
  • Respect: +506
    • Github
    • Google+
    • rciovati
    • Mostra profilo
Re:Problema con invio SMS
« Risposta #6 il: 03 Settembre 2011, 10:20:52 CEST »
0
Dovresti mettere il codice, anche se però mi sembra strano che non te la riconosca...hai provato a riavviare eclipse?

No è corretto, la costante devi crearla tu.
Comunque qui c'è un articolo dettagliato su come mandare sms:

SMS Messaging in Android | mobiForge

Offline dart760

  • Nuovo arrivato
  • *
  • Post: 3
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    Samsung Galaxy s2
  • Sistema operativo:
    debian6
Re:Problema con invio SMS
« Risposta #7 il: 05 Settembre 2011, 09:25:24 CEST »
0
No è corretto, la costante devi crearla tu.
Comunque qui c'è un articolo dettagliato su come mandare sms:

SMS Messaging in Android | mobiForge

Grazie mille! ho colmato il mio vuoto d'ignoranza... non capivo il senso della costante, faccio ancora fatica a leggere il codice e a capirlo e non voglio limitarmi a dei copia-incolla da scarsissimo!
Pian piano imparo  :-P