android - 我想在我的 String JsonObject 中获取值(value)

标签 android arrays json

    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();
}

我的回答是 {"status":"1","re​​sult":"true") 但如果“状态”的其他方式意味着我无法在状态中获取“1”的值,我将无法执行此操作。

最佳答案

两个错误

  1. 获取整数和 bool 值作为字符串
  2. 比较字符串与==

这样做

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) 
{
    ...
    ...

关于android - 我想在我的 String JsonObject 中获取值(value),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50809097/

相关文章:

javascript - Laravel - 将 JSON 响应包装在文本区域中

安卓和J2ME

android - 如何在 Android 版 Parse.com 中使用关系列

android - 窗口管理器坏 token 异常android

c++ - 类成员数组/std::arrays 可以被替换吗?

php - mysql插入数据时数组使用和bindParam使用有什么区别?

ios - 不断轮询服务器以获取来自 iOS 应用程序的新 JSON?

java - 处理来自服务器android的数组数据

java - 避免在android中使用非常量表达式

PHP/MYSQL session - 打印当前用户名