首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >验证登录屏幕的JSON响应并转到主屏幕

验证登录屏幕的JSON响应并转到主屏幕
EN

Stack Overflow用户
提问于 2015-08-28 16:23:28
回答 3查看 585关注 0票数 1

当用户登录到应用程序时,我得到了用户名、pasword、token、userID和入职板的JSON响应。根据应用程序的要求,如果JSON数据中的入职值是"true“,我必须将用户重定向到主页。

代码语言:javascript
复制
[
    {
    "display_name": "my email ID",
    "msg_status": "success",
    "userid": "userID",
    "plan_type": "none",
    "token": "my token",
    "requires_onboarding": true
    }
]

我在java代码中得到了所有这些字段。现在,如果这个入职值为真,我想让用户转到主屏幕。请帮帮忙。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2015-08-28 16:29:42

如果您将这个json作为字符串,那么像下面的代码那样解析它。如果您已经使用了JSONArray,那么就不需要使用第一行了。

代码语言:javascript
复制
JSONArray jsonArray = new JSONArray(jsonString);
JSONObject json2 = jsonArray.get(0);
boolean onBoarding = json2.getBoolean("requires_onboarding");

然后你可以用你的布尔变量做你想做的任何事情。

如果您对JSON有疑问,以下是有关它的一些信息:

JSONArray类似于:events:[ {"object1": value}, {"object1":Value} ],这意味着您获得了JSONArray,并对其中的每个东西使用了jsonArray.get(position)。(请注意,可以在JSONArrays中使用JSONArrays。

JSONObject基本上是具有附加值的"string“名称。

因此,您必须始终看到所获得的数据是如何构造成正确解析并在JSONObjects或数组之间进行正确选择的。

Here is a complete explanation the difference.

票数 1
EN

Stack Overflow用户

发布于 2015-08-28 16:53:10

最简单的方法是:

代码语言:javascript
复制
boolean what = false;
try{
  JSONArray mRootArray = new JSONArray(jsonString);
  JSONObject jInnerObject = mRootArray.getJSONObject(0);
  what = jInnerObject.getBoolean("requires_onboarding");
 }catch(Exception e){
  what = false;
  e.printstacktrace();
 }

现在按布尔值的状态进行维护:

代码语言:javascript
复制
if(what){
// Go to netxt screen
}else{
// Stay here
}

希望这能帮到你,

票数 1
EN

Stack Overflow用户

发布于 2015-08-29 22:17:51

我得到了所需的输出人员,谢谢您的回应,正如我下面提到的。

代码语言:javascript
复制
    String name = list.get(5);
    if (name.equals("true"))
    startActivity(new Intent(Login.this, OnBoardingOne.class));
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/32275631

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档