簡體   English   中英

Android Facebook SDK之類的按鈕顯示為灰色(不可點擊)

[英]Android Facebook SDK like button is greyed out (not clickable)

我的應用程序中有一個Fb登錄,共享和贊按鈕。 所有都是來自facebook sdk的小部件。 因此,默認情況下,它們具有facebook sdk的屬性。 當用戶想要共享或喜歡時(未登錄),它將要求登錄。 然后將執行該操作。 我遵循了教程https://developers.facebook.com

對於登錄和共享按鈕,它的工作正常,但類似按鈕顯示為灰色(不可單擊)。 解決此問題的任何幫助。

public class MainActivity extends AppCompatActivity implements View.OnClickListener {
    private ImageButton playBtn, someBtn;
    LoginButton loginButton;
    LikeView likeViewButton;
    ShareButton shareButton;
    ShareLinkContent linkContent;
    CallbackManager callbackManager;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        initInstances();
        initCallbackManager();

        shareButton = (ShareButton)findViewById(R.id.share_button);
        linkContent = new ShareLinkContent.Builder().setContentUrl(Uri.parse("https://developers.facebook.com")).build();
        shareButton.setShareContent(linkContent);

        likeViewButton = (LikeView) findViewById(R.id.likeView_button);
        likeViewButton.setObjectIdAndType("http://inthecheesefactory.com/blog/understand-android-activty-launchmode/en", LikeView.ObjectType.PAGE);
    }

    private void initInstances() {
        playBtn = (ImageButton) findViewById(R.id.playBtn);
        playBtn.setOnClickListener(this);

        someBtn = (ImageButton) findViewById(R.id.someBtn);
        someBtn.setOnClickListener(this);

        loginButton = (LoginButton) findViewById(R.id.login_button);
        loginButton.setReadPermissions("public_profile");
    }

    private void initCallbackManager() {
        callbackManager = CallbackManager.Factory.create();
        loginButton.registerCallback(callbackManager, new FacebookCallback<LoginResult>() {
            @Override
            public void onSuccess(LoginResult loginResult) {
                Log.d("Getting User Details", "Success");
                getUserDetails(loginResult);
            }

            @Override
            public void onCancel() {
                Log.d("LOGIN_CANCEL", "Cancel");
            }

            @Override
            public void onError(FacebookException error) {
                Log.d("LOGIN_ERROR", "Error");
            }
        });
    }
}

Facebook將不再支持“本地贊”按鈕。 Facebook博客文章中

Native Like Button:專為移動應用程序設計的Native Like Button,從Facebook SDK 4.28及更高版本開始將不再受支持。 早期版本的SDK仍可以使用“本機喜歡的按鈕”,但是從2/6開始,將不再支持“本機喜歡的按鈕”。 2/6之后,將不再顯示“本機喜歡”對話框,並且點擊任何本機“喜歡”按鈕將不會執行任何操作。

如果您真的需要Like View,只需在build.gradle(應用程序)中編寫此代碼,但就不會再更新Facebook SDK

implementation 'com.facebook.android:facebook-android-sdk:4.27.0'

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM