繁体   English   中英

如何使用Hackbook示例获取Facebook朋友即将生日

[英]How to get Facebook Friends Upcoming Birthdays using Hackbook Example

我正在使用Facebook Android开发人员Hackbook示例,我想知道如何获得Facebook朋友即将到来的生日,例如: 今天使用GraphAPI在10天内使用GraphAPI等,使用GraphAPIFQL

  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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM