我面临着从活动到另一个活动发送和接收google对象的问题。
List<Integer> selectedScamMediumIds = scamMediumHorizontalAdapter.getSelectedScamMediumIds();
JsonObject scamData = new JsonObject();
JsonArray scamMediumJsonArray = new JsonArray();
for (Integer scamMediumId:selectedScamMediumIds) {
JsonPrimitive jsonPrimitive = new JsonPrimitive(scamMediumId);
scamMediumJsonArray.add(jsonPrimitive);
}
scamData.add("scam_medium_id",scamMediumJsonArray);
scamData.addProperty("scam_category_id", scamCategoryId);
scamData.addProperty("scam_sub_category_id", scamSubCategoryId + "");
scamData.addProperty("scammer_phone", phoneNumber.getText().toString());
scamData.addProperty("scammer_location", scammerLocation.getText().toString());
scamData.addProperty("lat", lattitude);
scamData.addProperty("lng", longitude);
Intent intent = new Intent(ScamLookUpActivity.this, ScamSearchActivity.class);
intent.putExtra("scamDatas", scamData.toString());
intent.putExtra("scamSubCategoryText", subCategoryTitle);
startActivity(intent);我试过以上方法,我不知道它是否正确。请帮助我如何发送和接收json对象从一个活动到另一个活动。
发布于 2017-05-09 04:26:34
你这样做是正确的。要在另一个活动中获得它,您可以按照
if (getIntent().getExtras() != null) {
String scamDatas = getIntent().getStringExtra("scamDatas");
String scamSubCategoryText = getIntent().getStringExtra("scamSubCategoryText");
try {
JsonParser parser = new JsonParser();
JsonObject scamDataJsonObject = parser.parse(scamDatas).getAsJsonObject();
} catch (Exception e) {
e.printStackTrace();
}
}发布于 2017-05-09 05:07:37
试一试
1.通过意图发送字符串
intent.put("scamData", scamData.getAsString(); //or scamData.toString();2.在其他活动中从意图接收字符串
String scamDataStr = getIntent().getStringExtra("scamData");3.使用JsonParser解析json的
new JsonParser().parse(scamDataStr);发布于 2017-05-09 05:18:41
您可以简单地将整个JSONObject作为字符串。就像这样:
i.putString("scamData", jsonObj.toString);然后在MovieProductActivity中你可以
JSONObject jsonObj = new JSONObject(getIntent().getStringExtra("scamData"));https://stackoverflow.com/questions/43860992
复制相似问题