这是一个相当简单的问题,但由于我没有使用parse.com Android内置SDK,我陷入困境。
我正在尝试将数据通过Android中的以下内容传递给parse.com,即使该对象是在没有数据的情况下创建的,但是当我包含数据时它不起作用。
Android应用中的文本框将数据通过此方式转换为JSON:
protected JSONObject getBodyTextAsJSON() {
String bodyText = getBodyText();
if (bodyText != null && !TextUtils.isEmpty(bodyText)) {
try {
return new JSONObject(bodyText);
} catch (JSONException e) {
Log.e(LOG_TAG, "User's data is not a valid JSON object", e);
}
}
return null;
}
当我输入一些数据时,我的Logcat显示以下内容对我来说似乎很好:
显示日志输出的代码:
try {
Iterator keys = body.keys();
Log.d(LOG_TAG, "JSON data:");
while (keys.hasNext()) {
String key = (String) keys.next();
Log.d(LOG_TAG, " " + key + ": " + body.get(key));
params.put(key, body.get(key).toString());
}
} catch (JSONException e) {
Log.w(LOG_TAG, "Unable to retrieve a JSON value", e);
}
当我在文本正文中输入类似于此{{a“=”test1“,”b“= test2”}的数据时,我会在logcat中获得以下内容:
12-31 09:09:22.631 1991-1991/com.loopj.android.http.sample D/JsonStreamSample: JSON data:
12-31 09:09:22.631 1991-1991/com.loopj.android.http.sample D/JsonStreamSample: a: asd
12-31 09:09:22.632 1991-1991/com.loopj.android.http.sample D/JsonStreamSample: b: ert"
似乎很好;但是,parse.com不会记录输入的数据。相反,当文本框为空时,它会创建对象正常(但没有不需要的数据)。在我看来,Android和parse.com中的JSON没有相同的格式。