WebDialog compartir publicación en Facebook cuando el usuario elimina la aplicación de la configuración

Hola Tengo problema con Facebook:

Caso:

1.User no tiene ninguna aplicación de Facebook.

2.Ingresos de usuario en Facebook a través de WebDialog

3.User da todos los permisos para el recurso compartido, y comparte

4.User ingresa la cuenta de Facebook, que en las aplicaciones, y elimina mi aplicación.

5.User intenta compartir de nuevo.

6. "Error desconocido. Vuelva a intentarlo más tarde" Aparece en WebDialog.

¿Hay alguna manera de arreglar este caso? Encontré que con ShareDialog puedo evitar este problema cuando el usuario tiene la aplicación de Facebook instalado, pero no sé cómo solucionarlo si el usuario no tiene ninguna aplicación fb en su teléfono.

Para mostrar el diálogo verifico:

private boolean checkFacebookLogin(){ Session session = Session.getActiveSession(); if(session!=null && session.isOpened() ){ return true; } return false; } 

Que pido permisos si son necesarios:

  private void performPublish() { Session session = Session.getActiveSession(); pendingAction = PendingAction.POST_STATUS_UPDATE; if (session != null && mCurrentActivity!=null) { if (hasPublishPermission()) { // We can do the action right away. handlePendingAction(); } else { // We need to get new permissions, then complete the action when we get called back. session.requestNewPublishPermissions(new Session.NewPermissionsRequest(mCurrentActivity, PERMISSIONS)); } } } 

Al final muestro WebDialog:

  WebDialog feedDialog = ( new WebDialog.FeedDialogBuilder(mCurrentActivity, Session.getActiveSession(), postParams)) .setOnCompleteListener(new OnCompleteListener() { @Override public void onComplete(Bundle values, FacebookException error) { } }) .build(); feedDialog.show(); 

Después de mostrar WebDialog, redirecciona a la página de error con el texto "Error desconocido […]", no he encontrado ninguna información de error, así que ni siquiera sé que algo va mal.

He intentado HelloFacebookSample, pero si el usuario no tiene una aplicación de facebook, no puede editar la publicación en el diálogo de facebook. Quiero ver el diálogo de Facebook en ambos casos (con / sin la aplicación fb instalada).

One Solution collect form web for “WebDialog compartir publicación en Facebook cuando el usuario elimina la aplicación de la configuración”

 if (FacebookDialog.canPresentShareDialog(this, FacebookDialog.ShareDialogFeature.SHARE_DIALOG)) { FacebookDialog shareDialog = new FacebookDialog.ShareDialogBuilder( this) .setLink(// what ever you want to share use here .build(); uiHelper.trackPendingDialogCall(shareDialog.present()); } else { Session session = Session.getActiveSession(); if (session != null && session.isOpened()) { Log.d("Tag", "Success!"); publishFeedDialog(); } else { //ask the user to login . //authButton.performClick(); share = true; // } } 

Así que desde el código anterior si la aplicación fb ya está instalado, se abrirá esa aplicación que usted tiene que pedir al usuario para iniciar sesión mediante la realización de Fb LoginButton. PerformClick (). Por lo que el usuario será redirigido al diálogo web de inicio de sesión fb. La llamada de éxito de onLogin u puede compartir utilizando.,

 private void publishFeedDialog() { Bundle params = new Bundle(); params.putString("link", ""); WebDialog feedDialog = (new WebDialog.FeedDialogBuilder( MenuActivity.this, Session.getActiveSession(), params)) .setOnCompleteListener(new OnCompleteListener() { @Override public void onComplete(Bundle values, FacebookException error) { if (error == null) { // When the story is posted, echo the success // and the post Id. final String postId = values.getString("post_id"); if (postId != null) { Toast.makeText(MenuActivity.this, "Posted", Toast.LENGTH_SHORT).show(); } else { // User clicked the Cancel button Toast.makeText( MenuActivity.this .getApplicationContext(), "Publish cancelled", Toast.LENGTH_SHORT) .show(); } } else if (error instanceof FacebookOperationCanceledException) { // User clicked the "x" button Toast.makeText( MenuActivity.this.getApplicationContext(), "Publish cancelled", Toast.LENGTH_SHORT) .show(); } else { // Generic, ex: network error Toast.makeText( MenuActivity.this.getApplicationContext(), "Error posting story", Toast.LENGTH_SHORT) .show(); } } }).build(); feedDialog.show(); } 
  • If (session.isOpen ()), inicio de sesión de facebook en android siempre devuelve false
  • Lector de noticias de Facebook en android
  • Android Share Intent chooser - Compartiendo TEXTO con Facebook / Twitter Social media etc
  • Acceso autenticado a WebAPI a través del token de Facebook de la aplicación para Android
  • Android Studio no reconoce las importaciones de Facebook
  • Facebook android sdk 3.0 SSO
  • Error # 200 Facebook SDK Android
  • Facebook account kit - Devuelve el error "Lo sentimos, algo salió mal." En android
  • Aplicación para Android: agregar un botón de "compartir" para compartir la aplicación en redes sociales
  • La importación de Facebook SDK a Eclipse no puede resolver las importaciones de java / Android
  • Android facebook sdk appinvites AppInviteDialog pantalla blanca
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.