Android上的新JSONArray(String [])

joz*_*joz 2 java api android json

我正在尝试在链接文件夹中的文件中创建一个JSONArray到Android项目,而eclipse突然(之前没有这样做)给我错误:调用需要API级别19(当前最小值为14) :new org.json.JSONArray

它发生的代码如下:

String[] s = (save_val.trim().equals(""))?new String[]{}:save_val.split("\n");
JSONObject o = null;
if (!Arrays.equals(s, save_names)){

    new JSONArray(s); // this is where the error is shown
Run Code Online (Sandbox Code Playgroud)

编辑:解决方案实际上这个方法在API 19之前没有引入,但是如果你使用(如我的情况)字符串数组或其他promitives你可以简单地做:

    JSONArray s_values = new JSONArray();
    for (int i = 0; i < s.length; i++){
        s_values.put(yourarray[i]);
    }
Run Code Online (Sandbox Code Playgroud)

这应该不会慢

Dej*_*tic 7

看起来JSONArray(Object array)直到API级别19才引入构造函数.

http://developer.android.com/reference/org/json/JSONArray.html#JSONArray(java.lang.Object)

您可以将您的最小API版本更改manifest为19或

您可以转换Object arrayCollection array类似的,ArrayList并使用API 1中JSONArray提供 的Collection数组构造函数.

祝好运!