gpt4 book ai didi

android - Facebook android SDK 3.0 - .getInnerJSONObject() 中的 NullPointerException

转载 作者:太空宇宙 更新时间:2023-11-03 13:30:34 26 4
gpt4 key购买 nike

我正在使用适用于 Android 的 Facebook SDK 3.0(最终版本)。当我尝试在登录用户的提要上发布新状态时,有时(并非总是)在 .getInnerJSONObject() 处收到 NullPointerException。以下是我在 new Request.Callback(){} 中使用的代码:

public void onCompleted(Response response) {
JSONObject graphResponse = response
.getGraphObject()
.getInnerJSONObject();
String postId = null;
try {
postId = graphResponse.getString("id");
} catch (JSONException e) {
Log.d("", "JSON error "+ e.getMessage());
}
FacebookRequestError error = response.getError();
if (error != null) {
Toast.makeText(SessionLoginSampleActivity.this, error.getErrorMessage(), Toast.LENGTH_SHORT).show();
} else {
Toast.makeText(SessionLoginSampleActivity.this, "Post successful " + postId, Toast.LENGTH_LONG).show();
}
}

最佳答案

如果请求中有错误,response.getGraphObject() 返回 null。

使用 Response 的代码应始终在访问 getGraphObject() 之前检查 response.getError() 是否返回 null。

Response 有三个构造函数:一个接受 GraphObject,一个接受 GraphObjectList,一个接受 FacebookRequestError,所有字段都是 final。因此,在任何 Response 对象上,其中只有一个可以是非空的。

关于android - Facebook android SDK 3.0 - .getInnerJSONObject() 中的 NullPointerException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13934264/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com