小编Dev*_*edi的帖子

在Facebook Android SDK 4.0中设置按钮的登录/注销文本?

我的xml看起来像这样

<com.facebook.login.widget.LoginButton xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/fb_login_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:paddingLeft="15dp"
android:paddingRight="15dp"
android:text="CONNECT WITH FACEBOOK"
android:textColor="@color/white"
android:textSize="20sp"
android:textStyle="bold"
android:background="@drawable/button_fb_login"/>
Run Code Online (Sandbox Code Playgroud)

和背景drawble xml是

<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_pressed="true">
    <shape>
        <solid android:color="#4e69a2" />
        <stroke android:width="3dip" android:color="#4e69a2" />
        <padding android:bottom="0dip" android:left="0dip" android:right="0dip" android:top="0dip" />
    </shape>
</item>

<item>
    <shape>
        <solid android:color="#3b5998" />
        <stroke android:width="3dip" android:color="#3b5998" />
        <padding android:bottom="0dip" android:left="0dip" android:right="0dip" android:top="0dip" />
    </shape>
</item>
Run Code Online (Sandbox Code Playgroud)

现在在android studio预览屏幕中,它按预期显示.

在此输入图像描述

但是当我在手机或模拟器上运行它时,默认显示"登录FACEBOOK",就像这样

在此输入图像描述

如何在运行应用程序时获取自定义文本?

android facebook-graph-api facebook-android-sdk facebook-login android-facebook

21
推荐指数
2
解决办法
2万
查看次数

在使用SDK 4.0成功登录android后,我需要用户的电子邮件地址

我已经集成了最新的Facebook android sdk 4.0.在SDK 3.0+中,用户的电子邮件地址在成功登录后使用user.getProperty("email")进行检索.我在Facebook Android sdk 4.0中寻找相应的命令参考链接:

https://developers.facebook.com/docs/facebook-login/android/v2.3#overview https://developers.facebook.com/docs/android/upgrading-4.x

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    FacebookSdk.sdkInitialize(getActivity().getApplicationContext());
    callbackManager = CallbackManager.Factory.create();
}

@Override
public void onViewCreated(View view, @Nullable Bundle savedInstanceState) {
    super.onViewCreated(view, savedInstanceState);
    loginButton = (LoginButton) view.findViewById(R.id.login_button);
    loginButton.setReadPermissions("email", "user_likes", "user_friends");
    loginButton.setFragment(this);
    setFacebookLoginText(loginButton);
    // Other app specific specialization

    // Callback registration
    loginButton.registerCallback(callbackManager, new FacebookCallback<LoginResult>() {
        @Override
        public void onSuccess(LoginResult loginResult) {
            AccessToken accessToken = loginResult.getAccessToken();
            GraphRequest request = GraphRequest.newMeRequest(accessToken, new GraphRequest.GraphJSONObjectCallback() {
                @Override
                public void onCompleted(JSONObject user, GraphResponse graphResponse) {

                  //Need …
Run Code Online (Sandbox Code Playgroud)

sdk android facebook login facebook-login

8
推荐指数
2
解决办法
1万
查看次数