Android Facebook对JSON对象的响应
我需要将我的facebook响应转换为JSON对象,或者找到另一种方法在代码中使用响应 我已使用以下内容成功地将我的facebook api响应打印到日志:Android Facebook对JSON对象的响应,android,json,facebook-graph-api,Android,Json,Facebook Graph Api,我需要将我的facebook响应转换为JSON对象,或者找到另一种方法在代码中使用响应 我已使用以下内容成功地将我的facebook api响应打印到日志: Log.d("Friend Response in DIB: ", FriendResponse.toString()); 这就给了我: 06-09 14:02:33.706: D/Friend Response in DIB:(12421): {Response: responseCode: 200, graphObject: Gra
Log.d("Friend Response in DIB: ", FriendResponse.toString());
这就给了我:
06-09 14:02:33.706: D/Friend Response in DIB:(12421): {Response: responseCode: 200, graphObject: GraphObject{graphObjectClass=GraphObject, state={"data":[{"id":"1402927803328937","name":"Open Graph Test User"},{"id":"1402874766667901","name":"Jane Dickson"}],"paging":{"next":"https:\/\/graph.facebook.com\/v2.0\/277976949048048\/friends?format=json&access_token=CAAKsYnmrEh0BAGhTzCUOr6r3zMH7tt1mouEXrqsAi2fh1nYK1d1w5iSvBQEjCupMB1SA9f8G9GyAm41Bct0qwnXnHr4H81eHRHQaoEUrm9JhqRk2LNN260mZCNJwiuiqxX24zHrBINqZCcyh9VzsCM7PO2UKGfEJOcxmEhAZCl9v8XrcrBIkaeGNRC7zh7hZASZADRMTACaRUZApjkjyAuFxSWflkqMldfISgz4Lvi2gZDZD&limit=5000&offset=5000&__after_id=enc_Aey9afbBKXSo8gtNoFOb5eEu4paCRUYRSWIG0v3nSeCgpCIWIj7O-gHnmemCVpr7hQgH--aTwM6-lZA6MyqEfF6H"}}}, error: null, isFromCache:false}
这个信息是正确的,现在我需要将每个返回用户的id和name放入列表视图中它自己的列表项中
我有一个代码,它已经做到了这一点,除了它使用makeHttpRequest从url获取信息
如何将我的facebook响应类型转换为可以使用此代码而不是makeHttpRequest的类型
// getting JSON string from URL
JSONObject json = jParser.makeHttpRequest(url_all_videos, "POST", params);
// Check your log cat for JSON reponse
Log.d("All Products: ", json.toString());
Log.d("Friend Response in DIB: ", FriendResponse.toString());
try {
// Checking for SUCCESS TAG
int success = json.getInt(TAG_SUCCESS);
if (success == 1) {
// products found
// Getting Array of Products
products = json.getJSONArray(TAG_PRODUCTS);
// looping through All Products
for (int i = 0; i < products.length(); i++) {
JSONObject c = products.getJSONObject(i);
// Storing each json item in variable
String id = c.getString(TAG_ID);
String name = c.getString(TAG_NAME);
//从URL获取JSON字符串
JSONObject json=jParser.makeHttpRequest(url\u所有视频,“POST”,参数);
//检查日志cat中的JSON响应
Log.d(“所有产品:,json.toString());
Log.d(“DIB中的Friend Response:,FriendResponse.toString());
试一试{
//检查成功标签
int success=json.getInt(TAG_success);
如果(成功==1){
//发现的产品
//获取一系列产品
products=json.getJSONArray(TAG_products);
//在所有产品中循环
对于(int i=0;i
等等
非常感谢大家的帮助!看看Facebook的官方文档 如果执行异步(
Request.executeAsync()
)请求,将使用Request.Callback
和onCompleted(Response-Response)
方法。如果连续执行请求(确保不在主线程上),Response
将是Request.executeAndWait()返回的值
方法
从
Response
对象,您可以调用Response.getGraphObject().getInnerJsonObject()
。使用图形浏览器工具更好地了解从API调用获得的JSON的结构。非常感谢!Response.getGraphObject().getInnerJsonObject()正是我所需要的。