代码之家  ›  专栏  ›  技术社区  ›  tech_human

Android-从intent读取数组并将其添加到JsonObject

  •  0
  • tech_human  · 技术社区  · 7 年前

    JsonObject metadata; // This has the JsonArray in it.
    final String[] bookIdsArray = new Gson().fromJson(metadata.get("bookIds") , String[].class);
    testIntent.putExtra("bookIds", bookIdsArray);
    

    活动A中的代码:

    final JsonObject activityMetadata = new JsonObject();
    activityMetadata.addProperty("bookIds", String.valueOf(intent.getStringArrayExtra("bookIds")));
    

    JsonObject的addProperty方法只接受字符串、数字、布尔值或字符,而另一个名为“add”的方法只接受JsonElement。如何直接向其中添加数组?

    1 回复  |  直到 7 年前
        1
  •  0
  •   urgentx Galeb Nassri    7 年前

    使用JsonObject方法 add(String property, JsonElement value) 作为 JsonArray JsonElement

    String[] idsFromIntent = intent.getStringArrayExtra("bookIds");
    JsonArray bookIds = new JsonArray();
        for (String id : idsFromIntent) {
            bookIds.add(id);
        }
    activityMetadata.add("bookIds", bookIds);