在开始之前,我有一个用于将数据发布到服务器的应用程序,它运行正常。我试图复制相同的代码以便在另一个应用程序中使用而且无法正常工作,所以我将解释我做了什么:
首先,我使用api23
,DefaultHttpClient
已经减少,所以我使用的是org.apache
库,问题就解决了。
我用它来发送数据:
JSONParser jParser = new JSONParser();
JSONObject json1 = jParser.makeHttpRequest(url_create_product, "POST", params);
但是,这会在Log中返回null。我检查了所有参数并且它们不是空的。我所做的是尝试在JSONParser()
中找到问题。一切都很好,直到:
try {
jObj = new JSONObject(json);
} catch (JSONException e) {
Log.e("parser", "Error trying parse data " + e.toString());
}
这是json==null
出现在日志中的地方,它说:
解析数据的错误org.json.jsonException在字符2的inpuy结束时,(json1)有一个空引用。
我不知道还有什么要检查。我在其他应用程序中使用相同的PHP工作正常。所以我不认为PHP不是问题,因为我使用了相同的PHP。