Tôi đang cố gắng triển khai Facebook "Nút Thích" trong ứng dụng Android của mình. Trước khi tôi sử dụng Facebook SDK v3, nơi bạn sẽ thiết lập LikeView và sau đó gọi likeView.handleOnActivityResult (context, requestCode, resultCode, data) bên trong onActivityResult(); Điều này sẽ thay đổi nút để sau khi trang được "thích" nó sẽ hiển thị "Thích" và số lượng người cũng thích trang.Android Facebook SDK v4 Vấn đề LikeView
Hiện tại, tôi đang sử dụng SDK Facebook v4 vì v3 hiện không còn được dùng nữa. Trong phiên bản này, tôi không thấy bất kỳ tài liệu hoặc dù sao để có cùng một loại chức năng cho nút "thích". Nó không còn có phương thức likeView.handlePnActivityResult mà v3 có. Bây giờ khi người dùng nhấn nút "thích" và thích trang, nó không thay đổi trạng thái của nút.
Có ai biết cách giải quyết vấn đề này để nó có chức năng giống như LikeView trong SDK Facebook v3 không?
Đây là mã của những gì tôi đang làm:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// Initialize FaceBook SDK
FacebookSdk.sdkInitialize(this);
setContentView(R.layout.activity_about);
// Set up ActionBar
actionBar = getActionBar();
actionBar.setDisplayHomeAsUpEnabled(true);
terms = (LinearLayout) findViewById(R.id.terms_holder);
privacyPolicy = (LinearLayout) findViewById(R.id.privacy_policy_holder);
share = (LinearLayout) findViewById(R.id.social_media_holder);
environmentButton = (Button) findViewById(R.id.environment_change);
likeView = (LikeView) findViewById(R.id.like_view);
likeView.setObjectIdAndType("##############", LikeView.ObjectType.PAGE);
}
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
// In the old Facebook SDK this is where it would change the like button to "liked 2,038" but this code is deprecated now apparently
// likeView.handleOnActivityResult(this, requestCode, resultCode, data);
}
Và đây là XML của tôi: Câu trả lời
<LinearLayout
android:id="@+id/social_media_holder"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:paddingBottom="10dp"
android:gravity="center_vertical"
android:clickable="true"
android:onClick="onClick" >
<com.facebook.share.widget.LikeView
android:id="@+id/like_view"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:paddingTop="10dp" />
<TextView
android:id="@+id/post_title"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginRight="5dp"
android:text="@string/post_about_us"
android:textSize="20dp"
android:textColor="@color/dark_grey" />
Bạn cần triển khai một CallbackManager và sau đó, trong onActivityResult, hãy bỏ qua kết quả cho nó qua: callbackManager.onActivityResult (requestCode, resultCode, data); – Guardanis
Cảm ơn bạn rất nhiều! – Sloganho
Vui vì tôi có thể giúp ~ – Guardanis