Android facebook intención de mostrar el perfil con la clase com.facebook.katana.ProfileTabHostActivity no funciona más

Posible duplicado:
Lanzar aplicación de facebook desde otra aplicación

Hasta hace unos días, para mostrar a mis usuarios otro perfil de usuario utilicé la siguiente solución:

Intent intent = new Intent(Intent.ACTION_VIEW); intent.setClassName("com.facebook.katana", "com.facebook.katana.ProfileTabHostActivity"); Long uid = new Long("123456789"); intent.putExtra("extra_user_id", uid); startActivity(intent); 

Esta solución es utilizada por muchos de los usuarios de stackoverflow (De ver todas las preguntas y respuestas sobre este tema).

La última actualización de la aplicación de Facebook (1.9.11), tal vez incluso antes de hacer esta solución obsoleta. Ahora obtendrá la siguiente excepción para hacerlo:

Java.lang.SecurityException: Permiso de denegación: Intención inicial {act = android.intent.action.VIEW cmp = com.facebook.katana / .ProfileTabHostActivity (tiene extras)} de ProcessRecord … requiere null

¿Alguien sabe cómo puedo ahora abrir la aplicación de Facebook?

Gracias

One Solution collect form web for “Android facebook intención de mostrar el perfil con la clase com.facebook.katana.ProfileTabHostActivity no funciona más”

La solución descrita en la pregunta ya no funciona (En la edición de esta pregunta se puede ver los detalles por qué). La nueva versión de la aplicación facebook ya no soporta este tipo de intentos. Vea aquí el informe de errores

La nueva solución es utilizar el mecanismo del esquema del iPhone (Sí, facebook decidió apoyar el mecanismo del iPhone en Android en lugar del mecanismo de intención implícita de Android).

Así que para abrir la aplicación de facebook con un perfil de usuario todo lo que necesitas hacer es:

 String facebookScheme = "fb://profile/" + facebookId; Intent facebookIntent = new Intent(Intent.ACTION_VIEW, Uri.parse(facebookScheme)); startActivity(facebookIntent); 

Si estás buscando otras acciones puedes usar la siguiente página para todas las acciones disponibles (tienes que probarlo, ya que no encontré una publicación oficial de facebook sobre esto)

EDITAR

Esta parte de la pregunta es dar más detalles sobre la naturaleza del problema y la solución, pero los detalles anteriores son suficientes para resolver el problema.

Con la nueva versión de la aplicación de Facebook, se cambió el archivo de manifiesto. Hoy la actividad

Com.facebook.katana.ProfileTabHostActivity

Descrito en el manifiesto de la siguiente manera:

 <activity android:theme="@style/Theme.Facebook" android:name="com.facebook.katana.ProfileTabHostActivity" android:configChanges="keyboard|keyboardHidden|orientation|screenLayout" android:windowSoftInputMode="adjustPan" /> 

Dado que ya no existe ningún filtro de intenciones para esta actividad, el valor predeterminado de android: exportado es ahora falso . En las versiones anteriores, hubo un filtro de intención y el valor por defecto fue true (le invitamos a leerlo aquí ). Quisiera agradecer esta respuesta por los detalles sobre el valor exportado.

Pero la nueva versión tiene la siguiente actividad:

 <activity android:name="com.facebook.katana.IntentUriHandler"> <intent-filter> <action android:name="android.intent.action.VIEW" /> <category android:name="android.intent.category.DEFAULT" /> <data android:scheme="facebook" /> </intent-filter> <intent-filter> <action android:name="android.intent.action.VIEW" /> <category android:name="android.intent.category.DEFAULT" /> <category android:name="android.intent.category.BROWSABLE" /> <data android:scheme="fb" /> </intent-filter> </activity> 

Y aquí se puede ver que apoyan el esquema de fb y facebook .

  • Nueva API de Facebook 3.0. Y compatibilidad con ActionBarSherlock
  • La publicación de Android en Facebook no funciona cuando la aplicación de Facebook ya está instalada en el dispositivo
  • ¿Cómo obtener el ID de Facebook de un usuario a través de la API de ContactsContracts?
  • Propuesta de participación de Android para facebook- compartir texto y enlace
  • Facebook unidad sdk 6.0 crash app en el segundo inicio de sesión
  • Integración de aplicaciones de Android Facebook con GAE
  • Cómo recuperar un Facebook-AuthToken de las cuentas guardadas en Android
  • Cumpleaños de amigos de Facebook en Android
  • Facebook cómo enviar solicitud de autorización de solicitud a los amigos?
  • Keytool con Android SDK de Facebook
  • Facebook - Android autoriza el error de la aplicación
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.