我对 Android Studio 还很陌生。当用户想要登录/注册 MySQL 数据库(使用 phpMyAdmin)时,我尝试使用 LoginActivity 输入用户的电子邮件和密码。我的代码现在只能使用静态变量登录,请参见下面的代码。
在 LoginActivity.java 中,我得到了以下代码来使用静态变量测试登录:
//A dummy authentication store containing known user names and passwords.
//TODO: remove after connecting to a real authentication system.
private static final String[] DUMMY_CREDENTIALS = new String[]{
"foo@example.com:hello", "bar@example.com:world"
};
LoginActivity.java 中还有这部分我不太理解:
@Override
protected Boolean doInBackground(Void... params) {
// TODO: attempt authentication against a network service.
try {
// Simulate network access.
Thread.sleep(2000);
} catch (InterruptedException e) {
return false;
}
for (String credential : DUMMY_CREDENTIALS) {
String[] pieces = credential.split(":");
if (pieces[0].equals(mEmail)) {
// Account exists, return true if the password matches.
return pieces[1].equals(mPassword);
}
}
// TODO: register the new account here.
return false; //CHANGED
}
完整的LoginActivity.java here
我需要更改 LoginActivity 的哪一部分才能从 mySQL 数据库而不是静态变量登录并注册用户?任何帮助表示赞赏。谢谢!
最佳答案
我真的不明白为什么你需要这些静态变量。但是如果你想登录或注册一个用户到你的MYSQL数据,你需要的是发出一个HTTP请求,忘记那些静态变量。既然您提到了 phpMyadmin,我假设您对 PHP 有一些了解,您可以使用 XMAPP(window) 或 MAMP(osx) 设置本地主机服务器。
有很多方法可以将数据发送到自己的服务器,但最简单的方法是使用我推荐的第 3 方库 Android Volley 。
登录时,您需要进行查询以检查传递到服务器的用户名和密码是否确实存在。对于注册,只需将新记录插入到您的数据库中。如果您不知道什么是 HTTP 请求,请开始 here
关于java - Android Studio LoginActivity with MySQL - 尝试对网络服务进行身份验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42744497/