Android: ¿Cuál es la clase de diálogo compartido en Facebook SDK 4.x

Estoy usando el código a continuación para abrir el diálogo de Facebook compartido con una URL de página de Facebook.

El problema es que, cuando miro a la publicación compartida en mi pared a través de la aplicación de Facebook, encuentro el mensaje sin la cubierta de página compartida.

Si bien comparto la misma página a través de la aplicación de Facebook en mi pared, encuentro el post con la portada de página compartida (que por supuesto es mucho más fresco).

¿Hay algún parámetro faltante en el código de abajo?

Estoy usando Facebook SDK 4.1.2

FacebookDialog shareDialog = new ShareDialog(mMainActivity); if (ShareDialog.canShow(ShareLinkContent.class)) { ShareLinkContent linkContent = new ShareLinkContent.Builder() .setContentUrl(Uri.parse(aFacebookPageURL)) .build(); shareDialog.show(linkContent); } 

Editar 1:

Utilizando .setImageUrl (Uri.parse (aPageCoverURL))

Puedes ver la diferencia entre la mitad superior (compartida a través de la aplicación de Facebook para móviles) y la mitad inferior (compartida a través de mi aplicación).

Introduzca aquí la descripción de la imagen

Editar 2: ¿Cómo puedo usar el código a continuación para compartir una página de Facebook? El código que aparece a continuación no funciona y no aparece ningún diálogo compartido, no sé si hay un parámetro faltante o este código no está destinado a compartir páginas, pero lo intento.

  ShareOpenGraphObject object = new ShareOpenGraphObject.Builder() .putString("og:type", "page") .putString("og:title", aTitle) .putString("og:url", aURL) .build(); // Create an action ShareOpenGraphAction action = new ShareOpenGraphAction.Builder() .setActionType(null) .putObject("page", object) .build(); ShareOpenGraphContent content = new ShareOpenGraphContent.Builder() .setPreviewPropertyName("page") .setAction(action) .build(); ShareDialog.show(mMainActivity, content); 

De la documentación de Facebook:

Campo de golf

Cuando las personas comparten enlaces de tu aplicación a Facebook, incluye los atributos que aparecen en la publicación:

  • Un contentURL , el enlace a compartir
  • Un contentTitle que representa el título del contenido en el enlace
  • Una imageURL , la URL de la imagen en miniatura que aparecerá en la publicación
  • Un contentDescription del contenido, por lo general 2-4 oraciones

Si desea mostrar la imagen debe utilizar setImageUrl (@Nullable final Uri imageUrl) :

 ShareLinkContent linkContent = new ShareLinkContent.Builder() .setContentUrl(Uri.parse(aFacebookPageURL)) .setImageUrl(Uri.parse(imageUrl)) .build(); 

Este es un recurso compartido de SDK:

Introduzca aquí la descripción de la imagen

Se trata de un recurso compartido directamente de la aplicación:

Introduzca aquí la descripción de la imagen

  • Problemas al crear historiales de Open Graph: "no se puede generar la historia" y "no se genera la vista previa"
  • Cómo obtener la foto del perfil de Facebook en Facebook SDK Android
  • ¿Cómo comprobar si el usuario está conectado con FB SDK 4.0 para Android?
  • API de gráficos de Android Facebook
  • Inicio de sesión de Facebook: finaliza un error de hash de clave no válido, al intentar iniciar sesión de nuevo
  • ¿Por qué el ID de aplicación de Facebook de repente se convierte en no válido?
  • ¿Cómo puedo integrar Facebook LoginButton en PreferenceScreen
  • Parse SDK Android - API de gráficos de Facebook v2.0
  • No se puede obtener "cuenta" en los campos "me gusta" y "comentarios" usando el acceso_token de mi propia aplicación registrada
  • Cómo obtener la dirección de correo electrónico del usuario registrado con la solicitud de gráfico en Facebook Android sdk 4.0
  • Obtener la foto de la portada utilizando la API de Facebook
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.