![](/img/trans.png)
[英]How to get facebook friends birthdays using Hackbook sample in Android
[英]How to get Facebook Friends Upcoming Birthdays using Hackbook Example
我正在使用Facebook Android开发人员Hackbook示例,我想知道如何获得Facebook朋友即将到来的生日,例如: 今天使用GraphAPI
, 在10天内使用GraphAPI
等,使用GraphAPI
或FQL
public class graphApiRequestListener extends BaseRequestListener {
@Override
public void onComplete(final String response, final Object state) {
dialog.dismiss();
// access token is appended by Facebook object, hence params are
// added here after request is complete
if (!params.isEmpty()) {
url += "?" + Util.encodeUrl(params); // Params
}
metadataObject = null;
params.clear();
try {
JSONObject json = Util.parseJson(response);
if (json.has("metadata")) {
metadataObject = json.getJSONObject("metadata");
json.remove("metadata");
} else {
metadataObject = null;
}
setText(json.toString(2));
} catch (JSONException e) {
setText(e.getMessage());
e.printStackTrace();
} catch (FacebookError e) {
setText(e.getMessage());
e.printStackTrace();
}
}
这里使用Facebook的旧SDK的一些代码尝试这个
Facebook fb = new Facebook(main.APP_ID);
SessionStore.restore(fb, mActivity);
mAsyncRunner = new AsyncFacebookRunner(fb);
String graphPath = "me/friends";
Bundle bundle_friends = new Bundle();
bundle_friends.putString("fields", "id,birthday");
mAsyncRunner.paramsRequest(graphPath, bundle_friends, new AsyncRequestListener(mActivity) {
@Override
public void onComplete(JSONObject obj, Object state) {
try {
JSONArray data = obj.getJSONArray("data");
for (int i = 0; i < data.length(); i++) {
JSONObject temp = data.getJSONObject(i);
if (!temp.isNull("birthday"))
bundleForBirthdays.putString(temp.getString("id"), temp.getString("birthday"));
}
} catch (JSONException e) {
e.printStackTrace();
}
}
});
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.