如何使用Android应用程序上的Facebook验证服务器上的用户

时间:2016-10-29 18:37:47

标签: java android facebook server

我正在构建一个可与服务器配合使用的Android应用。服务器需要完成所有工作。我想让我的用户创建帐户并使用Facebook连接。

我不知道我需要在数据库中保留哪些信息,以便用户能够在更改电话,重新安装应用程序或任何可能修改其Facebook令牌的内容时对其进行身份验证。

如果我足够清楚,我不会知道我对facebook auth感到有点困惑:/

1 个答案:

答案 0 :(得分:0)

这是你如何获得facebook-user的id:

 @Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    FacebookSdk.sdkInitialize(this);
    setContentView(R.layout.activity_main);


    callbackManager = CallbackManager.Factory.create();

    login = (LoginButton) findViewById(R.id.btn_login);
    login.setReadPermissions("email", "public_profile");
    login.registerCallback(callbackManager, new FacebookCallback<LoginResult>() {
        @Override
        public void onSuccess(LoginResult loginResult) {
            GraphRequest request = GraphRequest.newMeRequest(loginResult.getAccessToken(), new GraphRequest.GraphJSONObjectCallback() {
                @Override
                public void onCompleted(JSONObject object, GraphResponse response) {

                    String id = object.getString("id");
                    // some database stuff here
                    // ...
                }
            });
            request.executeAsync();
        }

        @Override
        public void onCancel() {

        }

        @Override
        public void onError(FacebookException error) {
            Log.d("ERROR", error.toString());
            Toast.makeText(MainActivity.this, "Couldn't login, pleasy try again!", Toast.LENGTH_SHORT).show();
        }
    });

}