Sto cercando di implementare il "pulsante Mi piace" di Facebook nella mia app per Android. Prima stavo usando Facebook SDK v3 in cui avresti impostato LikeView e quindi chiamavi likeView.handleOnActivityResult (context, requestCode, resultCode, data) all'interno di onActivityResult(); Questo cambierebbe il pulsante in modo che dopo che la pagina fosse "piaciuta" mostrerebbe "Mi piace" e il numero di persone a cui piace anche la pagina.Android Facebook SDK v4 numero LikeView
Ora, sto utilizzando l'SDK di Facebook v4 perché la versione 3 è ora deprecata. In questa versione, non vedo alcuna documentazione o comunque avere questo stesso tipo di funzionalità per il pulsante "mi piace". Non ha più il metodo like.handlePnActivityResult like che aveva v3. Ora quando l'utente preme il pulsante "Mi piace" e gli piace la pagina, non cambia lo stato del pulsante.
Qualcuno sa come risolvere questo problema in modo che abbia la stessa funzionalità del LikeView in Facebook SDK v3?
Ecco il codice di quello che sto facendo:
@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);
}
Ed ecco la mia XML: risposta
<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" />
È necessario implementare un CallbackManager e quindi, in onActivityResult, passare il risultato ad esso tramite: callbackManager.onActivityResult (requestCode, resultCode, data); – Guardanis
Grazie mille! – Sloganho
Contento di aver potuto aiutare ~ – Guardanis