如何将json结果从一个活动传递到另一个活动

时间:2016-04-06 11:06:15

标签: java android

我想将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;
}

4 个答案:

答案 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;
}
}     

如果您需要任何其他帮助,请告诉我! 干杯!!