【问题标题】:Android Facebook sdk GraphRequest returns null when get user info获取用户信息时,Android Facebook sdk GraphRequest 返回 null
【发布时间】:2017-07-30 16:36:39
【问题描述】:

我正在尝试使用 Facebook API 允许用户登录我的应用程序,登录操作成功完成并且我获得了访问令牌,但是当我使用 GraphRequest 获取用户信息时,它的响应和对象返回 null ,我是android开发的新手。 这是我的代码:

    public class SignIn extends Fragment {

        private LoginButton loginButton;
        private CallbackManager callbackManager;
        @Override
        public View onCreateView(LayoutInflater inflater, ViewGroup container,
                                 Bundle savedInstanceState)
        {
            View v =  inflater.inflate(R.layout.fragment_sign_in, container, false);
            Button button = (Button) v.findViewById(R.id.button_signin);
            button.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View view) {
                    Intent i = new Intent(getActivity(),Home.class);
                    startActivity(i);
                    getActivity().finish();
                }
            });

            callbackManager = CallbackManager.Factory.create();
            loginButton = (LoginButton) v.findViewById(R.id.facebook_button);
            loginButton.setReadPermissions("email");
            loginButton.setFragment(this);
            loginButton.registerCallback(callbackManager, new FacebookCallback<LoginResult>() {
                @Override
                public void onSuccess(LoginResult loginResult) {
                    GraphRequest request = GraphRequest.newMeRequest(
                            AccessToken.getCurrentAccessToken(),
                            new GraphRequest.GraphJSONObjectCallback() {
                                @Override
                                public void onCompleted(JSONObject object, GraphResponse response) {
=                                    try {
                                        Log.d("id",object.getString("id")) ;
                                        Log.d("email",object.getString("email")) ;

                                    } catch (JSONException e) {
                                        e.printStackTrace();
                                        Toast.makeText(getActivity().getApplicationContext(),e.getMessage(),Toast.LENGTH_LONG).show();
                                    }
                                }
                            });
                    Bundle parameters = new Bundle();
                    parameters.putString("fields", "id,name,link");
                    request.setParameters(parameters);
                    request.executeAsync();
                }

                @Override
                public void onCancel() {
                }

                @Override
                public void onError(FacebookException exception) {
                }
            });
            return v ;
        }

        @Override
        public void onActivityResult(int requestCode, int resultCode, Intent data)
        {
            callbackManager.onActivityResult(requestCode, resultCode, data);
        }
    }

build.gradle(项目)(如果需要)

// Top-level build file where you can add configuration options common to all sub-projects/modules.

buildscript {
    repositories {
        jcenter()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:2.3.3'

        // NOTE: Do not place your application dependencies here; they belong
        // in the individual module build.gradle files
    }
}

allprojects {
    repositories {
        jcenter()
        mavenCentral()
    }
}

task clean(type: Delete) {
    delete rootProject.buildDir
}

【问题讨论】:

    标签: java android facebook facebook-graph-api facebook-login


    【解决方案1】:

    我发现我忘了在清单中添加这个:

    <activity android:name="com.facebook.FacebookActivity"
        android:configChanges=
            "keyboard|keyboardHidden|screenLayout|screenSize|orientation"
        android:label="@string/app_name" />
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2017-09-23
      • 1970-01-01
      • 1970-01-01
      • 2013-07-27
      • 1970-01-01
      • 2017-02-23
      • 1970-01-01
      相关资源
      最近更新 更多