try {
JSONObject jobj = new JSONObject(response);
String status = jobj.getString("status");
String error = jobj.getString("result");
if(status == "1"){
builder.setTitle("Server Message");
builder.setMessage("Please validate your ID in registered email.");
}else if(status == "0")
{
builder.setTitle("Server Message");
builder.setMessage(error);
}else{
builder.setTitle("Server Message");
builder.setMessage(response);
}
} catch (JSONException e) {
e.printStackTrace();
}
builder.setPositiveButton("OK", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
Intent mainIntent = new Intent(RegisterActivity.this, LoginActivity.class);
startActivity(mainIntent);
}
});
AlertDialog alertDialog = builder.create();
alertDialog.show();
}
我的回答是{"状态":"1","结果":"真"( 但是我不能做,如果"状态"意味着我无法在状态中获得"1"的值。
两个错误
- 将整数和布尔值作为字符串获取
- 将字符串与
==
进行比较
这样做
int status = jobj.getInt("status");
Boolean error = jobj.getBoolean("result");
if(status == 1){
builder.setTitle("Server Message");
builder.setMessage("Please validate your ID in registered email.");
}else if(status == 0)
{
...
...
">
=="是引用比较。 因此,将"=="替换为等于((
status.equals("1")
我希望这对你有用。
通过使用字符串
String status = jobj.getString("status");
String error = jobj.getString("result");
if(status.equalsIgnoreCase("1")){
builder.setTitle("Server Message");
builder.setMessage("Please validate your ID in registered email.");
}else if(status.equalsIgnoreCase("0")){
// your other code.
}