我想将json结果用于另一个activity.Here以下代码我想使用Intent来传递数据第二个活动,但是我无法使用Intent class.How我可以使用intent来传递值
if (status == 200) {
HttpEntity entity = response.getEntity();
String data = EntityUtils.toString(entity);
System.out.println(data);
System.out.println("fffff");
JSONObject jsono = new JSONObject(data);
JSONArray jarray = jsono.getJSONArray("articles");
System.out.println(jarray);
for (int i = 0; i < jarray.length(); i++) {
JSONObject object = jarray.getJSONObject(i);
Dashboard_Model_File actor = new Dashboard_Model_File();
actor.setTitle(object.getString("category_name"));
actor.setDescription(object.getString("bookmark_title"));
actor.setUrl(object.getString("bookmark_website"));
actor.setBookmark_id(object.getString("bookmark_id"));
actor.setAlternate_id(object.getString("alternate_id"));
actor.setBookmark_file(object.getString("bookmark_file"));
actor.setMode(object.getString("mode"));
actor.setImage(object.getString("bookmark_preview_image"));
actorsList.add(actor);
}
return true;
}
答案 0 :(得分:1)
我建议将JSON结果作为字符串发送,请参阅以下代码
Intent intent=new Intent(getApplicationContext(),DistClass.class);
intent.putExtra("json",object.toString());
startActivity(intent);
第二节中的执行以下操作
String jsonResult=getIntent().getExtras().getString("json");
JSONObject json=new JSONObject(jsonResult);
全部
答案 1 :(得分:0)
你应该在这里阅读:
https://github.com/google/gson
相同的gson,您可以将其作为sharedPreference发送到其他活动或商店,并访问另一个活动中的共享首选项。
或者有一种愚蠢的方式转换为字符串并使用putExtras发送意图并在另一个活动中作为getExtras访问它并在另一个活动中再次解析。
快乐编码
答案 2 :(得分:0)
试试这个 -
解析字符串中的数据
String categoryNameData = object.getString("category_name"); //Do this for all data object
检查数据是否为空,然后传递意图
if(categoryNameData != null){
Intent intent = new Intent("YourCurrentActivityName".this , "TargetActivityName".class);
intent.putExtra("cat" , categoryNameData); //do this for all data objects
startActivity(intent);
}
目标活动
String category = getIntent.getStringExtra("cat");
希望这会有所帮助:)
答案 3 :(得分:0)
而不是使用共享的pereferences或其他一些策略:
使用简单易用的解决方案 Singleton patteren 解析json结果并设置并获取值,如下所示:
public class RecentRequest {
String recieverName;
String dateTime;
String receiverNumber;
public String getRecieverName() {
return recieverName;
}
public void setRecieverName(String recieverName) {
this.recieverName = recieverName;
}
public String getDateTime() {
return dateTime;
}
public void setDateTime(String dateTime) {
this.dateTime = dateTime;
}
public String getReceiverNumber() {
return receiverNumber;
}
public void setReceiverNumber(String receiverNumber) {
this.receiverNumber = receiverNumber;
}
}
如果您需要任何其他帮助,请告诉我! 干杯!!