La aplicación Facebook ha violado su política StrictMode autoaplicada

Estoy usando Red Mi Noteejecutando en MIUI5. Recientemente, recibo este error:

La aplicación de Facebook (process.com.facebook.katana) ha violado su Política de modo estricto autoaplicada.

¿Qué significa? ¿Cómo puedo resolver el problema? Se vuelve frustrante cuando aparece el error, ya que continúa apareciendo y no se oculta al presionar OK.

ingrese la descripción de la imagen aquí

(Click en la imagen para ver su variante más grande)

El mensaje de error no tiene un tiempo específico para ocurrir, incluso el error no es específico de la aplicación. Ocurre al azar en diferentes situaciones.

He descargado la aplicación de Play Store, pero no de ninguna otra fuente. Y tengo Messenger y la aplicación de Facebook instaladas. Y estoy confundido si este error se debe a la aplicación de Facebook o a la aplicación de mensajería.
com.facebook.katanaes la aplicación de Facebook.
Al ver que el nombre del paquete es com.facebook.katana, creo que es Facebook, no Messenger. ¿Esto sucede al azar, o en una determinada condición? (¿a cierta hora? ¿durante el uso de cierta aplicación? etc.).
El mensaje de error no tiene una hora fija para llegar... En un día aparece aleatoriamente de 4 a 6 veces. Intenté desinstalar también pero vuelve a aparecer.
A veces ocurre cuando juego y, a veces, cuando uso aplicaciones,... en lo que a mí respecta y estudié sobre la ocurrencia de este error, no depende de la aplicación...

Respuestas (2)

En el dex proporcionado por la aplicación de Facebook, en la com.facebook.katana/app_secondary_program_dexcarpeta, encontramos muchas referencias al archivo StrictMode.

Entonces, para abreviar, si un programador usa StrictMode, tiene una razón. Básicamente, mientras se bifurca un proceso ocupado (leer: animación, leer datos, valores de diccionario para datos, abrir un nuevo fragmento o actividad en el hilo principal), en lugar de bloquear la aplicación, se debe poner (mostrar) un mensaje al usuario para informar sobre la espera o terminando la aplicación.

En el caso particular de la aplicación de Facebook, existe /facebook/strictmode/setter/Policy$Ally también errorreporting/StrictModeException. Entonces, el mensaje viene después de generar una excepción. Simplemente podemos asumir que una actividad toma demasiado tiempo o forzar la ejecución en el hilo principal.

La palabra clave está en MessengerApp. Podemos pensar en la aplicación de Facebook y Messenger como aplicaciones separadas, pero la verdad es que Facebook ha FbandroidMessengerAppModuleincorporado llamadas de funciones en su núcleo y también realiza algunas comprobaciones lógicas como, por ejemplo:

  • IsMessageBroadcastEnabled
  • IsMessageBroadcastGkEnabled
  • IsMessengerAppIconBadgingEnabled
  • IsMessengerAppIconBadgingGkEnabled
  • ¿Está activado el bloqueo de Messenger?
  • IsMessengerFlatBufferEnabled
  • IsMessengerLoggedOutAppIconBadgingEnabled
  • IsMessengerFotoEditarModo predeterminadoDibujo
  • IsMessengerFotoEditarModo predeterminadoDibujoGk
  • IsMessengerSonyAppIconBadgingEnabled
  • ¿Está habilitada la sincronización de Messenger?
  • IsMessengerThreadShortcutsEnabled

Sin acceso a la consola de depuración, no puedo predecir qué causa ese tipo de mensaje (¿se trata de leer valores de la base de datos almacenada, o algunos archivos de la base de datos están dañados, el usuario cambió de una conexión WiFi a una conexión a Internet mientras analizaba algunos datos?), pero mi consejo es asegurarse de que la aplicación de Facebook y Messenger para FB estén instalados y actualizados a la última versión.

En algún momento, una aplicación de juego puede incrustar el SDK de Facebook para compartir datos e intentar acceder a los datos sin los permisos de FB del usuario establecidos en ese juego (aplicación), o está mal escrito, por lo que puede generar alguna excepción ( creo que este es su problema ).

Esto se debe a ROOTING. Debes UNROOT.

¿Alguna referencia que pueda respaldar su respuesta?