Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/228.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 解析JSON以配置android应用程序_Java_Android_Json_Performance_Android Intent - Fatal编程技术网

Java 解析JSON以配置android应用程序

Java 解析JSON以配置android应用程序,java,android,json,performance,android-intent,Java,Android,Json,Performance,Android Intent,在我的android应用程序中,我必须使用来自服务器的JSON在应用程序中进行特定调整。 我试图实现的是读取此json并将所有值存储到局部变量中,以便在应用程序内执行操作 来自服务器的JSON: [ { "sett": " ", "glHdr": { "sm": [ ], "scleHPad": false, "st": "sbsm" }, "colr

在我的android应用程序中,我必须使用来自服务器的JSON在应用程序中进行特定调整。 我试图实现的是读取此json并将所有值存储到局部变量中,以便在应用程序内执行操作

来自服务器的JSON:

[

    {
        "sett": " ",
        "glHdr": {
            "sm": [ ],
            "scleHPad": false,
            "st": "sbsm"
        },
        "colrBG": [
            23,
            105,
            184,
            100
        ],
        "colrTB": [
            0,
            0,
            0,
            0
        ],
        "colrTR": [
            255,
            255,
            255,
            100
        ],
        "glFtr": {
            "icoSz": "icoSzN",
            "sm": [ ],
            "scleHPad": false,
            "gvNR": 3,
            "gvHIT": false,
            "gvNC": 3,
            "st": "igsm"
        },
        "statBr": true
    },
    {
        "sm": [
            {
                "tbico": "b43-jeep.png",
                "t": "Welcome!",
                "w": "http://google.com/start",
                "st": "w",
                "wTBL": "wTBLN"
            },
            {
                "t": "Content screen title",
                "f": "Eltec%20Spec%20sheet%20Gim%20RD30W.pdf",
                "st": "f"
            },
            {
                "tbico": "109-chicken.png",
                "t": "Sub menu",
                "sm": [
                    {
                        "t": "Screen 1",
                        "st": "f"
                    },
                    {
                        "t": "Screen 2",
                        "w": "Http://google.com",
                        "st": "w",
                        "wTBL": "wTBLT"
                    }
                ],
                "st": "sm"
            },
            {
                "st": "f"
            }
        ],
        "st": "tbm"
    }

]
为了解析这个,我创建了parse JSON类,并试图找到在我的应用程序中读取和存储这个JSON值的方法

函数执行此操作:

public void doScanAppConfigJson(){

private static final String = TAG_TITLE;
private static final String = TAG_WEB_ADDRESS;
private static final String = TAG_SCREEN_TYPE;
private static final String = TAG_FILENAME;


        JSONArray appConfig = null;

        // Function for looping json object via ParseJson class.
        //Creating JSON Parser instance
        JSONParser jParser = new JSONParser();

        //Getting json strings from url
        JSONObject jsonObject = jParser.getJSONFromUrl(url);

    try{
        //Getting array of settings
        appConfig = jsonObject.getJSONArray(ConfigConstants.TABLE_VIEW_SUB_MENU_CONFIG);
        //loop throw all the objects under -sm[]
        for (int i = 0; i < appConfig.length(); i++){

            JSONObject sm = appConfig.getJSONObject(i);

            //Now store each of this json in local constant var.

            String tabTitle = sm.getString(TAG_TITLE);

            String webAddress = sm.getString(TAG_WEB_ADDRESS);

            String screenType = sm.getString(TAG_SCREEN_TYPE);

            String fileName = sm.getString(TAG_FILENAME);

        }

    }catch (JSONException e){
        e.printStackTrace();

    }

    }

我得到了错误:
settingsjava.lang.NullPointException
但我有定义变量,请有人告诉我如何解析上面的JSON。我在正确的轨道上实现了我问题的答案吗?

当前的json字符串格式是:

[  //<<<< JSONArray

    {   //<<<< JSONObject
       // other items here...
    }

]

同时将
getJSONFromUrl
method返回类型更改为
JSONArray

您必须发布错误,否则我们无法帮助您。请查看更新的问题谢谢:),那么您是说将json转换为JSONArray?知道怎么做吗?@Dixit:是的,我有很多想法,只需发布带有问题的getJSONFromUrl方法代码,然后我就可以编辑了it@Dixit:u有类似于
JSONJSONObject的东西jsonObject=newjsonobject(response)?然后将其更改为
JSONArray jsonObject=newjsonarray(response)
我刚刚在这里添加了
getJSONFromUrl
方法:)我想我在
getJSONFromUrl
方法中没有这个响应,我已经在这里发布了这个方法,你能找到任何修复方法吗?
[  //<<<< JSONArray

    {   //<<<< JSONObject
       // other items here...
    }

]
JSONArray jsonObject = jParser.getJSONFromUrl(url);