就是有个返回的json数据,我只有在特定的页面查询才会返回一个带有"action": "searchInCity"的数据,如下:{"focus":"map","intent":"addViaPoint","subFocus":"","opration":"","operation":"","object":{"action":"searchInCity","keyword":"添加加油站"},"extras":null,"playMode":""} 下面的代码是获取json数据, PoiSearchInfo pi = null; try { String result = intent.getStringExtra("object"); Log.d(TAG, "json: " + result); JSONObject res = new JSONObject(result); JSONObject object = res.getJSONObject("object"); query = intent.getStringExtra(KEY_RULE_RAW); String api = object.getString("api"); if(object.equals("action")){ String action1 = object.getString("action"); if (API_SEARCH_IN_CITY.equals(action1)) { pi = new PoiSearchInfo(Constant.MAP_SEARCH_CITY, 5000, false, null, object.getString("keyword")); } android.util.Log.d("TAGAA", "execute: 的哇得到的飞 "+action1); } android.util.Log.d("TAGAA", "execute: 数据0是 ------ "+api); if (API_SEARCH_NEAR_BY.equals(api)) { pi = new PoiSearchInfo(Constant.MAP_SEARCH_NEARBY, 5000, false, null, object.getString("keyword")); } else if (API_SEARCH_IN_CITY.equals(api)) { pi = new PoiSearchInfo(Constant.MAP_SEARCH_CITY, 5000, false, null, object.getString("keyword")); } 现在的代码是获取有api的可以直接查到,我在特定的页面,比如“添加加油站成为途经点”,那么数据页返回了,我应该怎么拿到?
时间: 2023-07-13 14:15:12 浏览: 80
根据你提供的代码,可以看出你已经成功地获取了包含"action": "searchInCity"的JSON数据,并且已经通过条件判断把这个数据转化为了PoiSearchInfo对象。
如果你在特定页面中查询返回了这个JSON数据,可以考虑在页面中的相关代码块或函数中,添加一个类似于以下的语句:
```
Intent intent = getIntent();
String result = intent.getStringExtra("object");
JSONObject res = new JSONObject(result);
JSONObject object = res.getJSONObject("object");
if ("searchInCity".equals(object.getString("action"))) {
// 这里是你需要处理这个JSON数据的代码
}
```
这段代码会先获取Intent对象和传递过来的JSON数据,然后根据JSON数据中的"action"字段判断是否为"searchInCity",如果是,就执行相应的处理代码。你可以在处理代码中使用之前已经实现的PoiSearchInfo对象的相关属性。
阅读全文