2017-07-07 1 views
0

Ich versuche, die Facebook OpenGraph movie.rates Action Art funktioniert, aber mit Null Erfolg so weit und hoffe, jemand mit Erfahrung davon könnte mich in die richtige Richtung zeigen.Facebook OpenGraph movie.rates funktioniert nicht

Grundsätzlich möchte ich einen Benutzer Film Bewertung auf ihrer Timeline teilen. Ich habe mit dem unten stehenden Code herumgetüftelt, er erstellt das Dialogfeld, schreibt aber nicht in die Zeitleiste.

Ich habe versucht, Rating-Werte, Bewertungsskalen, um mit mehreren Objekttypen gespielt, aber es einfach nicht bekommen.

mein Code:

ShareOpenGraphObject object = new ShareOpenGraphObject.Builder() 
      .putString("og:type", "video") 
      .putString("og:title", "some movie name") 
      .putString("og:description", "test") 
      .putString("og:image", imageUrl) 
      .build(); 

    ShareOpenGraphAction action = new ShareOpenGraphAction.Builder() 
      .setActionType("video.rates") 
      .putObject("video", object) 
      .build(); 

    ShareOpenGraphContent content = new ShareOpenGraphContent.Builder() 
      .setPreviewPropertyName("video") 
      .setAction(action) 
      .build(); 

    ShareDialog shareDialog = new ShareDialog(this); 
    shareDialog.show(this, content); 
+0

Überprüfen Sie Ihr Aktivitätsprotokoll - wenn es dort auftaucht, ging alles gut. Nicht alles wird auf der Timeline angezeigt. – CBroe

+0

Aktivierte Aktivitätsprotokoll und nichts da. Der Callback gibt eine 0 zurück (sollte -1 sein) mit der Fehlermeldung Unbekannter Fehler (sehr hilfreich!). – ScottishUser

Antwort

0

OK bekam diese Arbeit mit dem folgenden Code. Dies startet einen video.rates Open-Graph Dialog wie benötigt:

ShareOpenGraphObject object = new ShareOpenGraphObject.Builder() 
      .putString("og:type", "video.other") 
      .putString("og:title", titleText) 
      .putString("og:image", imageUrl) 
      .putString("og:description", "Some description") 
      .build(); 

    ShareOpenGraphAction action = new ShareOpenGraphAction.Builder() 
      .setActionType("video.rates") 
      .putDouble("rating:value", 5.0f) 
      .putInt("rating:scale", 10) 
      .putString("review_text", reviewText) 
      .putObject("other", object) 
      .build(); 

    ShareOpenGraphContent content = new ShareOpenGraphContent.Builder() 
      .setPreviewPropertyName("other") 
      .setAction(action) 
      .build(); 

    ShareDialog shareDialog = new ShareDialog(this); 
    shareDialog.show(this, content); 
Verwandte Themen