我如何从服务器获取和设置android中的API(从服务器获取int值)?如何绑定和实现

时间:2019-07-04 21:33:18

标签: java android json api android-asynctask

我从API角色ID(以int值表示)得到响应。我如何在我的android项目中获取并设置此角色ID,以便可以在全球范围内使用它。

TextView  profile_fullName;
TextView profile_roleName;

int inspect=18;
int contract=19;

profile_fullName=(TextView)findViewById(R.id.profile_fullName);
profile_roleName=(TextView)findViewById(R.id.profile_role);

这是API的响应

{
  "success": true,
  "message": {
    "UserName": "ABC",
    "ComanyName": "ABC XYZ COMPANY Ltd",
    "Email": "abc.xyz@gmail.com",
    "FullName": "ABC",
    "RoleName": "logged in as Engineer",
    "RoleId": 19
  }
}

1 个答案:

答案 0 :(得分:0)

在您的情况下,响应为JSONObject。因此请通过JSONObject提取响应。

在您的onResponse()

public void onResponse(JSONObject response) {
    try {
        if (String.valueOf(response.get("success")).equalsIgnoreCase("true")) {   //this is just an additional validation
            JSONObject jsonObjectInner = new JSONObject(String.valueOf("message"));
            profile_fullName.setText(jsonObjectInner.get("FullName"));
            profile__roleName.setText(jsonObjectInner.get("RoleName"));

        }else{
         //add validation if success column is != true
        }
    } catch (Throwable e) {
        e.printStackTrace();
    }
}