将jsonarray从1个活动传递到另一个活动

ekj*_*yot 14 arrays android android-intent

我正在制作一个应用程序,我希望在两个活动之间传递一个json数组.如何通过android中的意图将json arry从一个活动传递到另一个活动.任何人都可以帮助我吗?谢谢

Lal*_*ani 52

Intent intent = new Intent(your_activity.this, new_activity.class);
intent.putExtra("jsonArray", mJsonArray.toString());
startActivity(intent);
Run Code Online (Sandbox Code Playgroud)

在下一个活动中

        Intent intent = getIntent();
        String jsonArray = intent.getStringExtra("jsonArray");

        try {
            JSONArray array = new JSONArray(jsonArray);
            System.out.println(array.toString(2));
        } catch (JSONException e) {
            e.printStackTrace();
        }
Run Code Online (Sandbox Code Playgroud)

  • 解决了我的问题!! (4认同)

Ven*_*nky 17

您应该将JsonArray转换为String,然后将其附加到Intent并发送它.

JSONObject jObject = new JSONObject("Your Json Response");
Intent obj_intent = new Intent(Main.this, Main1.class);
Bundle b = new Bundle();                
b.putString("Array",jObject4.toString());
obj_intent.putExtras(b);
Run Code Online (Sandbox Code Playgroud)

其中jObject4是JSON对象.

进入下一页:

Bundle b = getIntent().getExtras();
String Array=b.getString("Array");
Run Code Online (Sandbox Code Playgroud)

  • 它只是传递JSONObject,而不是JSONArray. (6认同)