java.lang.NoSuchMethodError: org.json.JSONArray.remove

java.lang.NoSuchMethodError: org.json.JSONArray.remove

问题:

使用JSONArray时候,出现这个错误的原因是JSONArray.remove 是因为JSONArray的remove方法是在API 19之后才加入的SDK中。

解决方案:
1.获取SDK版本,根据版本号,做出不同的逻辑处理。
if ( Build.VERSION.SDK_INT<19){
jsonArray= JsonUtil.removeFromJsonArray(jsonArray,i);
}else {
jsonArray.remove(i);
}

2.当SDK版本小于19时候,手动书写jsonArray的remove操作
removeFromJsonArray()方法

/**
* 删除给定index中jsonArray中的元素
* @param jsonArray 被操作的jsonArray
* @param index 要被删除位置
* @return 被处理过的jsonArray
*/
public static JSONArray removeFromJsonArray(JSONArray jsonArray,int index) throws JSONException {
JSONArray mJsonArray=new JSONArray();
if (index<0){
Log.d(TAG,”传入的数据不能为负数”);
return mJsonArray;
}else if (index>jsonArray.length()){
Log.d(TAG,”传入索引大于json数组长度”);
return mJsonArray;
}
for (int i= 0;i

猜你喜欢

转载自blog.csdn.net/u012782882/article/details/49996659