/ / Envoi d'email sans adresse email? - Android, email

Envoi de courrier électronique sans adresse e-mail? - Android, email

Désolé pour le titre déroutant. J'ai une application et je veux que mes utilisateurs m'envoient des commentaires. J'ai besoin de quelque chose qui n'est pas trop sophistiqué, juste une zone de texte où l'utilisateur peut taper et le bouton pour envoyer un message à un compte de messagerie que j'ai configuré pour les commentaires. Je souhaite que l'utilisateur puisse le faire sans utiliser aucun de ses comptes de messagerie ou autres. Puis-je utiliser quelque chose comme JSON pour envoyer un retour?

Réponses:

0 pour la réponse № 1

Vous pouvez autoriser les utilisateurs à envoyer leurs commentaires avec une vérification de validation de courrier électronique de base. Cette partie du code s’applique aux API de niveau 8 et supérieur. Cliquez sur le bouton d'envoi pour effectuer cette validation de base par courrier électronique.

public boolean checkEmail(String email) {
try {
return android.util.Patterns.EMAIL_ADDRESS.matcher(email).matches();

} catch (Exception e) {
Logging.e(TAG, "Email Validation", "Error: "+e.getMessage(),e);

}
return false;
}

Si la validation retourne vrai. Ensuite, récupérez l'ID de courrier électronique saisi et le contenu textuel du texte d'édition, encadrez une URL de publication et vérifiez si la réponse est HttpStatus.SC_OK.if si elle renvoie ok puis, à partir de l'exécution, appelez une méthode de votre activité à l'aide d'un écouteur à afficher. une fenêtre indiquant que les commentaires ont été envoyés avec succès. Pour poster l'URL et vérifier la réponse.Cadrez l'URL en arrière-plan et transmettez l'URL à cette méthode quelque part dans votre classe Utils pour renvoyer la réponse.

public static boolean sendRequestOnly(String url) {




DefaultHttpClient client = returnHttpClient();

HttpGet getRequest = new HttpGet(url);

try {

HttpResponse resp = client.execute(getRequest);
final int statusCode = resp.getStatusLine().getStatusCode();

if (statusCode == HttpStatus.SC_OK) {
Logging.d("ClassName", "Retreive response", "Status Code "
+ statusCode + " for URL " + url);
return true;
} else {
return false;
}

} catch (IOException e) {
getRequest.abort();

}

return false;

}

0 pour la réponse № 2

Vous pouvez utiliser GCM (message Google Cloud). Vous pouvez trouver le code ici.


0 pour la réponse № 3

Pour encadrer une URL avoir cela dans une méthode. Les commentaires envoyés doivent vous atteindre, non?

String url = "https://blablabla.net/";
StringBuilder sbUrl = new StringBuilder("feedback.jsp?email=");
sbUrl.append(emailId);
sbUrl.append("&content=");
sbUrl.append(textContent);
sbUrl.append("&subject=");
sbUrl.append(subject);
sbUrl.append("&os_version=");
sbUrl.append(OptimumConstants.OS_VERSION);

// si vous voulez l'ID utilisateur.Personne qui vous a envoyé les commentaires, etc. sbUrl.append ("& user_id ="); sbUrl.append (settings.getString ( SomeConstants.LOGGED_IN_USERNAME, "")); // ici vous pouvez ajouter s'il y a une autre requête urlparams comme identifiant de périphérique, type de périphérique, version os etc. sbUrl.append ("&" + Utils.FewOtherRLParams); url + = sbUrl.toString ();

    boolean resp= Utils.sendRequestOnly(url);

return resp;

0 pour la réponse № 4

Cette méthode est utilisée pour le délai d'attente par défaut en cas de problème de connexion, par exemple un délai d'attente de socket ou un délai d'attente de connexion.

            public static DefaultHttpClient returnHttpClient() {
HttpParams httpParameters = new BasicHttpParams();
// Set the timeout in milliseconds until a connection is established.
// The default value is zero, that means the timeout is not used.
int timeoutConnection = 60000;
HttpConnectionParams.setConnectionTimeout(httpParameters,
timeoutConnection);
// Set the default socket timeout (SO_TIMEOUT)
// in milliseconds which is the timeout for waiting for data.
int timeoutSocket = 600000;
HttpConnectionParams.setSoTimeout(httpParameters, timeoutSocket);

return new DefaultHttpClient(httpParameters);
}