目前我在http://www.jondev.net/articles/Sending_Emails_without_User_Intervention_(no_Intents)_in_Android使用Java邮件库来完成此任务;但是我必须在电子邮件和密码中进行硬编码才能使用。
我发现了另外一个关于此问题的问题,并且它与(也是谷歌的最高结果之一)http://nilvec.com/sending-email-without-user-interaction-in-android/相关联 - 但该网站不再运行,或者目前已停止运行。
我认为Javamail库现在运行良好,但我宁愿我的代码不被反编译并且我的用户/密码字符串悬在那里;我知道你可以使用ProGuard,但我的信息仍有可能让我睁开眼睛。
所以我的问题是:我是否有另一种替代方案,而不是Javamail库 - 如果没有,我该如何正确保护我的数据呢?
谢谢!
答案 0 :(得分:2)
加密该信息。 您的代码可以有一个解密来读取该信息。
您可以将其存储为应用的私人数据。和你的应用程序。可以在需要时解密信息。
这是一种比在代码中对密码进行硬编码更好的方法,就像您因为任何原因更改邮件密码而必须重建和更新应用程序以适应更改。
如果加密和存储,您可以随时通过对话框手动添加新密码,因为您的应用程序是唯一可以解密数据的应用程序。
即使您不想更新,也只需加密新密码并替换加密文件即可。
javax.crypto有一系列功能可以帮助您解决这个问题。 http://developer.android.com/reference/javax/crypto/package-summary.html