Italian [B4A] Spedire una email

AlpVir

Well-Known Member
Licensed User
Longtime User
Come da soggetto vorrei spedire una email utilizzando l'account predefinito che ogni smartphone possiede.
In altre parole lo smartphone (che possiede appunto un account predefinito, ad esempio [email protected]) dovrebbe essere in grado di inviare una email a (esempio) [email protected].
E giacomino riceve l'email spedita da [email protected].
Un altro diverso smartphone (con account [email protected]) invia una email a [email protected]. Federico riceve quindi l'email da [email protected].
Non è necessario inviare allegati ma sarebbe preferibile non attivare il client di posta predefinito.
Spero di esser stato chiaro.
Grazie per l'attenzione
 

Star-Dust

Expert
Licensed User
Longtime User
Il concetto di email predefinita si può intendere in diversi modi.
Un dispositivo può avere più client di posta e ognuno un email predefinita.
Però potresti intendere gli account su sul dispositivo Android, gmail per intenderci, e volere quello predefinito.
Una terza possibilità è l'app di default per inviare email e l'account predefinito di quest'app

Non sono sicuro di aver capito quale delle possibili soluzioni ti cerchi, ma ti linko alcune risposte su domande simili, sperando di averti aiutato :

Thread 'User's Default (From) Email Address' https://www.b4x.com/android/forum/threads/users-default-from-email-address.21570/

Thread 'Email intent :: default email client' https://www.b4x.com/android/forum/threads/email-intent-default-email-client.39879/

Post in thread 'How to get phone's default email client?' https://www.b4x.com/android/forum/threads/how-to-get-phones-default-email-client.10832/post-60446
 
Last edited:

AlpVir

Well-Known Member
Licensed User
Longtime User
Grazie ai link suggeriti son riuscito a ricavare l'account predefinito di uno smartphone tramite la funzione GetUserAccountMail.
Sono anche riuscito a spedire una email ma ... l'appetito vien mangiando.
E' sorta la necessità di spedire numerose email, tutte aventi lo stesso mittente senza però - attenzione - fare intervenire il client email dello smarphone.
Sembra che si debba necessariamente utilizzare la libreria SMTPExtras; bisogna quindi dotarsi di un nuovo apposito account di posta elettronica.
In un primo momento avevo creato un account [email protected] ma poi ho constatato che gmail, dal maggio di quest'anno, non consente più l'invio di email con il solo utilizzo di username e password.
Allora ho ripiegato su un altro server SMTP, sendinblue che ha limite di invio giornaliero di 300 email (ed è gratuito !)
Sperando di essere utile riporto il punto del codice in cui viene inizializzata la citata libreria.
S1="smtp-relay.sendinblue.com"
S2="***@*****"
S3="************"
If FirstTime Then
SMTPExtras1.Initialize (S1, 587, S2, S3, "SMTPExtras1")
End If

Finora assolutamente tutto OK.
 

Star-Dust

Expert
Licensed User
Longtime User
Purtroppo gmail richiede un identificazione supplementare. Ma devo dire che non su tutte le email.

Ne ho una commerciale e una personale. Per qualche ragione in quella ancora entro solo con nome utente e password.
Non so da cosa dipende, se esiste un opzione per disabilitare l'autenticazione supplementare... o semplicemente il passaggio è graduale e prima o poi anche per questa email sarà richiesto.

Ma se non mi sbaglio credo fi aver letto sul forum che con oauth si può accedere a gmail con il nuovo metodo
 

AlpVir

Well-Known Member
Licensed User
Longtime User
Troppo complicato utilizzare gmail. Senza contare che prima o poi metteranno qualche ulteriore paletto.
L'app in questione risale al 2017 ed allora SMTPExtras funzionava a dovere. Adesso non più ed ho letto in un sito di Google che dal 22 (mi sembra) maggio 2022 non è più possibile spedire email (tramite delle app) indicando unicamente username e password.
 

sirjo66

Well-Known Member
Licensed User
Longtime User
Troppo complicato utilizzare gmail

Bisogna configurare Gmail correttamente.
Io ho dei programmi in VB.NET che inviano email tramite gmail, ma bisogna avere qualche accorgimento.
Sull'account di google, nella sezione "Accesso a Google" bisogna attivare la "Verifica in due passaggi".
Poi nella sezione "Password per le app" bisogna creare una password (che sarà di 16 caratteri)
A questo punto la tua app, per inviare email tramite la connessione smtp, dovrà utilizzare l'username e questa password.
Ovviamente si deve usare la porta corretta, abilitare SSL e tutto il resto.

Qui trovi il codice https://www.b4x.com/android/help/net.html#smtp
 
Last edited:
Top