Pregunta

En mi aplicación envío bugreports por correo electrónico. Escuché que el registro de mi contraseña aquí no es seguro, ¿cómo lo protejo?

¿Es suficiente escribir en mi /res /valores y luego leerlo desde allí?

La razón de esto es que no usaré la aplicación de correo electrónico interna. Entonces el usuario sale de mi aplicación y eso no es muy bueno porque puede no volver

GMailSender sender = new GMailSender("my_emailadress@gmail.com", "my_password");
sender.sendMail("Bugreport", 
                currentQuestion.getID(),   
                "my_emailadress@gmail.com",   
                "my_emailadress@gmail.com"); 

Por favor, ayúdame. Gracias

¿Fue útil?

Solución

Puede usar el cifrado SHA para cifrar su contraseña:

A continuación se muestra el código para usar el cifrado SHA:

import java.io.UnsupportedEncodingException; 
import java.security.MessageDigest; 
import java.security.NoSuchAlgorithmException; 

public class AeSimpleSHA1 { 

    private static String convertToHex(byte[] data) { 
        StringBuffer buf = new StringBuffer();
        for (int i = 0; i < data.length; i++) { 
            int halfbyte = (data[i] >>> 4) & 0x0F;
            int two_halfs = 0;
            do { 
                if ((0 <= halfbyte) && (halfbyte <= 9)) 
                    buf.append((char) ('0' + halfbyte));
                else 
                    buf.append((char) ('a' + (halfbyte - 10)));
                halfbyte = data[i] & 0x0F;
            } while(two_halfs++ < 1);
        } 
        return buf.toString();
    } 

    public static String SHA1(String text) 
            throws NoSuchAlgorithmException, UnsupportedEncodingException  { 
        MessageDigest md;
        md = MessageDigest.getInstance("SHA-1");
        byte[] sha1hash = new byte[40];
        md.update(text.getBytes("iso-8859-1"), 0, text.length());
        sha1hash = md.digest();
        return convertToHex(sha1hash);
    } 
}

Otros consejos

No hay una forma realmente segura de proteger su contraseña, si la pone en su aplicación. Lo que menos puede hacer sería hacer una cuenta de separación, por lo que no está interlinista de su cuenta real.

Aparte de eso, recomendaría no usar este enfoque en absoluto. Usar la aplicación Build in Mail no es tan malo. De esta manera, el usuario lo sabría, está contribuyendo algo a mejorar su aplicación, lo cual es algo bueno.

Una tercera posibilidad sería hacer una página web para enviar errores y enviar una solicitud HTTP en su aplicación cuando ocurre un error. Sin embargo, avísele al usuario, porque si no, puede pensar que lo está espiando.

Y luego, está el mecanismo de informes de choque de Android que está integrado, por lo que no tiene que hacer nada en absoluto.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top