java – Android Facebook图表api基本信息请求
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了java – Android Facebook图表api基本信息请求,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含3985字,纯文字阅读大概需要6分钟。
内容图文
只是试图允许我的应用程序访问经过身份验证的Facebook用户的基本信息,但我的logcat告诉我
06-30 16:37:27.969:WARN / System.err(1559):com.facebook.android.FacebookError:必须使用活动访问令牌来查询有关当前用户的信息.
在运行代码的身份验证之后.有人能指出我正确的方向吗?我见过一个非常相似的帖子,其中有人使用几乎完全相同的代码而且它有效.
谢谢
Facebook facebook = new Facebook("187212574660004");
TextView nText;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
nText = (TextView) this.findViewById(R.id.nameText);
facebook.authorize(this, new String[] {"offline_access", "user_interests", "friends_interests"},
new DialogListener() {
public void onComplete(Bundle values) {
setContentView(R.layout.homepage);
}
public void onFacebookError(FacebookError error) {}
public void one rror(DialogError e) {}
public void onCancel() {}
});
JSONObject json_data = null;
try
{
JSONObject response = Util.parseJson(facebook.request("me/friends")); // Get a friend information from facebook
JSONArray jArray = response.getJSONArray("data");
json_data = jArray.getJSONObject(0);
String name = json_data.getString("name");
Log.i("friend is", name);
nText.setText(name);
}
catch (MalformedURLException e)
{
e.printStackTrace();
}
catch (JSONException e)
{
e.printStackTrace();
}
catch (IOException e)
{
e.printStackTrace();
}
catch (FacebookError e)
{
e.printStackTrace();
}
}
@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
facebook.authorizeCallback(requestCode, resultCode, data);
}
尝试了Manno23之前描述的方法并得到了
06-30 19:27:04.338:ERROR / AndroidRuntime(349):引起:java.lang.NullPointerException
06-30 19:27:04.338:ERROR / AndroidRuntime(349):at com.staffit.FacebookPage.getFriends(FacebookPage.java:67)
06-30 19:27:04.338:ERROR / AndroidRuntime(349):at com.staffit.FacebookPage.access $0(FacebookPage.java:55)
06-30 19:27:04.338:ERROR / AndroidRuntime(349):at com.staffit.FacebookPage $1.onComplete(FacebookPage.java:41)
06-30 19:27:04.338:ERROR / AndroidRuntime(349):at com.facebook.android.Facebook.authorizeCallback(Facebook.java:383)
06-30 19:27:04.338:ERROR / AndroidRuntime(349):at com.staffit.FacebookPage.onActivityResult(FacebookPage.java:93)
06-30 19:27:04.338:ERROR / AndroidRuntime(349):在android.app.Activity.dispatchActivityResult(Activity.java:3907)
06-30 19:27:04.338:ERROR / AndroidRuntime(349):在android.app.ActivityThread.deliverResults(ActivityThread.java:2492)
06-30 19:27:04.338:ERROR / AndroidRuntime(349):… 11更多
解决方法:
以上两个答案都是正确的.您可以将执行请求的代码块放入单独的方法中,并在onComplete()中调用该方法,即
Facebook facebook = new Facebook("XXXXXasdasdajksdad");
TextView nText;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
nText = (TextView) this.findViewById(R.id.nameText);
facebook.authorize(this, new String[] {"offline_access", "user_interests", "friends_interests"},
new DialogListener() {
public void onComplete(Bundle values) {
getFriends();
setContentView(R.layout.homepage);
}
public void onFacebookError(FacebookError error) {}
public void one rror(DialogError e) {}
public void onCancel() {}
});
}
private void getFriends(){
JSONObject json_data = null;
try
{
JSONObject response = Util.parseJson(facebook.request("me/friends")); // Get a friend information from facebook
JSONArray jArray = response.getJSONArray("data");
json_data = jArray.getJSONObject(0);
String name = json_data.getString("name");
Log.i("friend is", name);
nText.setText(name);
}
catch (MalformedURLException e)
{
e.printStackTrace();
}
catch (JSONException e)
{
e.printStackTrace();
}
catch (IOException e)
{
e.printStackTrace();
}
catch (FacebookError e)
{
e.printStackTrace();
}
}
@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
facebook.authorizeCallback(requestCode, resultCode, data);
}
内容总结
以上是互联网集市为您收集整理的java – Android Facebook图表api基本信息请求全部内容,希望文章能够帮你解决java – Android Facebook图表api基本信息请求所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。