Android Facebook share: actividad no encontrada

Tengo problema con mi función para publicar datos en Facebook:

public void postData() { try { Intent i = new Intent(Intent.ACTION_SEND); i.setClassName("com.facebook.katana", "com.facebook.katana.ShareLinkActivity"); i.setType("text/*"); i.putExtra(android.content.Intent.EXTRA_TEXT, "http://sample_url.com"); startActivity(i); } catch (Exception e) { Intent i= new Intent(Intent.ACTION_VIEW); i.setData(Uri.parse("http://sample_url.com)); startActivity(i); } } 

Cada vez que recibo información de que la actividad com.facebook.katana.ShareLinkActivity no se puede ejecutar y debo agregar código al manifiesto de Android. La aplicación de Facebook está instalada en el teléfono.

En AndroidManifest.xml:

  <activity android:name="com.facebook.katana.ShareLinkActivity" > </activity> 

Excepción en LogCat:

 01-30 14:46:00.903: E/AndroidRuntime(11626): FATAL EXCEPTION: main 01-30 14:46:00.903: E/AndroidRuntime(11626): android.content.ActivityNotFoundException: Unable to find explicit activity class {com.facebook.katana/com.facebook.katana.ShareLinkActivity}; have you declared this activity in your AndroidManifest.xml? 01-30 14:46:00.903: E/AndroidRuntime(11626): at android.app.Instrumentation.checkStartActivityResult(Instrumentation.java:1634) 01-30 14:46:00.903: E/AndroidRuntime(11626): at android.app.Instrumentation.execStartActivity(Instrumentation.java:1510) 01-30 14:46:00.903: E/AndroidRuntime(11626): at android.app.Activity.startActivityFromChild(Activity.java:3531) 01-30 14:46:00.903: E/AndroidRuntime(11626): at android.app.Activity.startActivityForResult(Activity.java:3283) 01-30 14:46:00.903: E/AndroidRuntime(11626): at android.app.Activity.startActivity(Activity.java:3370) 

4 Solutions collect form web for “Android Facebook share: actividad no encontrada”

Finalmente conseguí este código para trabajar:

  Intent sharingIntent = new Intent(Intent.ACTION_SEND); sharingIntent.setType("text/plain"); sharingIntent.putExtra(Intent.EXTRA_SUBJECT, "Subject"); sharingIntent.putExtra(Intent.EXTRA_TEXT, "Text..."); sharingIntent.setPackage("com.facebook.katana"); startActivity(sharingIntent); 

Los puntos principales son setPackage y setType – ahora Android elige la actividad correcta del paquete de Facebook.

para todos los que están usando el appcelerator aquí cómo lo consiguió para trabajar …

 var intFB = Ti.Android.createIntent({ action : Ti.Android.ACTION_SEND, packageName : "com.facebook.katana", type : "text/plain" }); intFB.putExtra(Ti.Android.EXTRA_TEXT, "http://www.google.com"); //facebook only supports LINKS(!!!) Ti.Android.currentActivity.startActivity(intFB); 

Sí … debe declarar el archivo com.facebook.katana.ShareLinkActivity en AndroidManifest.xml . Esto debe hacer.

Editar:

O o … problema se encuentra en el método setClassName . Reemplazar la siguiente línea

  i.setClassName("com.facebook.katana","com.facebook.katana.ShareLinkActivity"); 

Con este:

  i.setClassName("com.facebook.katana","ShareLinkActivity"); 

Como segundo parámetro en el método es className y usted también estaba pasando el nombre del paquete con el nombre de la clase que el depurador no pudo encontrar. Como nombre de clase es ShareLinkActivity no com.facebook.katana.ShareLinkActivity .

Esto finalmente resolverá su problema.

Sólo para que todos estamos en la misma página con esto. Facebook ha intencionalmente roto esto y se niega a arreglarlo y la vergüenza en ellos por hacerlo.

https://developers.facebook.com/bugs/332619626816423

  • Cómo iniciar sesión en facebook en WebView si ya tiene acceso token de FB SDK en Android
  • Comparte texto en Facebook desde la aplicación de Android a través de ACTION_SEND.
  • El inicio de sesión de Facebook falla en algunos dispositivos
  • Publicar en pared FB Utilizar SDK 3.0
  • ¿Cómo puedo convertir la entrada de Facebook created_time a la zona horaria del usuario?
  • Inicia sesión con Facebook en mi sitio web Django a través de la aplicación para Android
  • Facebook api versión usada en facebook android sdk
  • Android WebView para Facebook como botón
  • Compartir enlace y texto con Android Facebook SDK 3.0
  • No se pueden importar paquetes Session, Request, Response, GraphUser en android
  • Pantalla de inicio de Android Facebook no hay teclado
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.