我不是专业人士。希望我能解决你的问题。我有两种方法来做会员系统。
首先,我将创建一个像 User.java 这样的数据模型
-> 用户.java
class User{
private String username = "";
private String password = "";
// Getter and Setter..
}
当用户登录时,创建一个新的用户对象。
User user = new User();
user.setPassword(...);
user.setUsername(...);
当您需要通过 httprequest 从服务器获取信息时。您需要做的是从 User 对象中获取信息
Url url = new Url("http://your.server/index.php?username=" + user.getUsername() + "&password=" + user.getPassword());
HttpURLRequest conn = url.openConnection();
.......
更多信息。我通常从登录过程中保存 cookie。
ArrayList<String> cookiesList = new ArrayList<String>();
Map<String, List<String>> mHeaderMap = mConnection.getHeaderFields();
String headername = "";
for(int i = 0; (headername = mConnection.getHeaderFieldKey(i)) != null; i++){
if(headername.equals("Set-Cookie")){
cookiesList.add(mConnection.getHeaderField(i));
}
}
然后,如果您发送另一个登录请求。您再次使用 cookie 并发送到服务器。
mConnection.setRequestProperty("Cookie", cookie);
更多信息在这里。
在服务器端。
<?php
session_start();
if($_GET.count() > 0)
$username = $_GET['username'];
if($_GET.count() > 0)
$password = $_GET['password'];
$arr = array();
if($_SESSION['username'] == $username && $_SESSION['password'] == password){
$arr = array("isValid" => true, "message" => "");
}else{
$arr = array("isValid" => false, "message" => "");
}
echo json_encode($arr);
?>
在安卓上
if(isValid){
startActicity(....)
}