-1

Facebook SDK コード例を使用したバックエンドレス実装はどこかにありますか? これを実行しましたが、バックエンドでユーザーのデータを確認できません。

これが私のコードです。

 private FacebookCallback<LoginResult> mCallBack = 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) {
                            Log.e("response: ", response + "");



                            Backendless.UserService.loginWithFacebookSdk(LoginActivity.this,
                                    callbackManager,
                                    new AsyncCallback<BackendlessUser>() {
                                        @Override
                                        public void handleResponse(BackendlessUser response) {
                                            user = new User();
                                            user.setFacebookID((String) response.getProperty("id"));
                                            user.setName((String) response.getProperty("name"));
                                            user.setEmail((String) response.getProperty("email"));
                                            user.setGender((String) response.getProperty("gender"));
                                            user.setLocale((String) response.getProperty("locale"));
                                        }

                                        @Override
                                        public void handleFault(BackendlessFault fault) {
                                            Toast.makeText(getApplicationContext(), fault.getMessage(), Toast.LENGTH_SHORT).show();
                                        }
                                    });
                        }
                    }
            );

            Bundle parameters = new Bundle();
            parameters.putString("fields", "id, name, email, gender, locale, birthday, picture.width(80).height(80)");
            request.setParameters(parameters);
            request.executeAsync();
        }

        @Override
        public void onCancel() {
            Log.i(TAG, "LoginButton FacebookCallback onCancel");
        }

        @Override
        public void onError(FacebookException error) {
            Log.i(TAG, "LoginButton FacebookCallback onError:: "+error.getMessage());
            Log.i(TAG, "Exception:: "+error.getStackTrace());
        }
    }

マッピング

Map<String, String> facebookFieldMappings = new HashMap<String, String>() {{
                    put("id", "fb_id");
                    put("first_name", "fb_first_name");
                    put("last_name", "fb_last_name");
                    put("email", "email");
                    put("gender", "fb_gender");
                }};
4

2 に答える 2

1

@Scadge の発言に加えて、バックエンドレス コンソールに組み込まれたコード生成を使用できます。これをする:

  1. バックエンドレス コンソールでコード生成アイコンをクリックします。
  2. クライアントの種類を選択してください (iOS/Android/JS)
  3. 「Facebookログイン」チェックボックスを選択します
  4. 画面下部の「コードをダウンロード」ボタンをクリックします。
于 2016-04-27T16:01:34.293 に答える
0

コードスニペット付きのドキュメントで説明されています: https://backendless.com/documentation/users/android/users_facebook_login.htm

それを使用した完全なサンプルもあります: https://github.com/Backendless/Android-SDK/tree/master/samples/UserService/FacebookSDKSamples

于 2016-04-26T15:35:53.793 に答える