last developers compile app android facebook facebook-android-sdk facebook-sdk-4.x

android - developers - Facebook SDK 4.7.0 registra la excepción ClassNotFoundException para AppEventsLogger



facebook developers login (2)

Tengo un problema similar hace unos días con el registrador en el SDK de Facebook (v4.11.0) :

D/com.facebook.a.a(PID): Got unexpected exception: java.io.WriteAbortedException: Read an exception; java.io.NotSerializableException: org.json.JSONObject

Y en su documentation dijeron lo siguiente:

No tiene que realizar ningún paso adicional para usar ProGuard para el SDK de Android de Facebook. Para obtener instrucciones sobre Proguard, consulte Sitio de proyectos de herramientas de Android, Ejecución de ProGuard.

Después de ver lo que estaba causando que no se registrara ninguno de mis eventos en el entorno de lanzamiento, agregué la siguiente regla a mi archivo de proguard y luego comencé mágicamente a funcionar bien:

-keep class com.facebook.** { *; }

Ya abrimos un ticket al equipo de desarrolladores de Facebook para tener más información sobre esto. https://developers.facebook.com/bugs/250752828645777/

Integré el SDK de FB en mi aplicación de Android a través de Gradle para los eventos de registro y seguimiento. El inicio de sesión funciona bien, pero el logcat sigue mostrándome una excepción cada 15 segundos una vez que intento registrar un evento de aplicación:

D/com.facebook.appevents.AppEventsLogger: Got unexpected exception: java.lang.ClassNotFoundException: com.facebook.a.b

Se lanza en el método readAndClearStore () de PersistedEvents

Aquí está mi código para registrar el evento:

AppEventsLogger logger = AppEventsLogger.newLogger(this); Bundle parameters = new Bundle(); parameters.putString(AppEventsConstants.EVENT_PARAM_CURRENCY, "EUR"); parameters.putString(AppEventsConstants.EVENT_PARAM_CONTENT_TYPE, "product"); parameters.putString(AppEventsConstants.EVENT_PARAM_CONTENT_ID, id); logger.logEvent(AppEventsConstants.EVENT_NAME_VIEWED_CONTENT, 1.99, parameters);

Quiero decir que com.facebook.ab parece un problema avanzado. Pero en los documentos del SDK de FB, indican claramente que no es necesario que ingreses ninguna regla para que funcione. Este error también se muestra cuando no minimizo mi aplicación y también si descargo el SDK de Github y lo incluyo como un módulo.


Use en gradle en lugar de sdk: 4.11.0:

compile(''com.facebook.android:facebook-android-sdk:3.23.0'') { exclude module: ''bolts-android'' }

Tampoco puedo iniciar sesión con fb sdk: 4.11.0 ya que esta versión de fb sdk proporciona una excepción de la clase de Facebook. Con la versión superior de fb sdk, las nuevas clases están reemplazando a las antiguas.

Incluso en la nueva versión 23, ActionBaractivity es degradante, por lo que es necesario usar AppCompatActivity.