web-dev-qa-db-fra.com

E / com.facebook.appevents.RestrictiveDataManager: échec de updateRulesFromSetting

Lorsque je lance mon application à partir de Android Studio, avec le SDK Facebook installé sur mon appareil, Xiaomi Mi A2, il déclenche la même erreur trois fois. Cela n'arrête pas l'application, mais je ne le fais pas savoir si je manque quelque chose ou tout simplement, ce n'est pas important, mais au final, c'est une erreur et je veux le clarifier.

J'utilise Android Studio 3.4.1, Android 9 sur le Xiaomi A2 et la nouvelle clause dans le fichier build.gradle est implementation 'com.facebook.Android:facebook-Android-sdk:5.1.0'. L'erreur n'est pas apparue avant la mise à niveau du SDK Facebook.

C'est ce qui apparaît dans Logcat:

2019-06-24 18: 24: 31.202 25105-25136/com.myapp E/com.facebook.appevents.RestrictiveDataManager: updateRulesFromSetting a échoué org.json.JSONException: fin de l'entrée au caractère 0 de org.json.JSONTokener.syntaxError (JSONTokener.Java:449) sur org.json.JSONTokener.nextValue (JSONTokener.Java:97) sur org.json.JSONArray. (JSONArray.Java:92) sur org.json.JSONArray. (JSONArray.Java:108) à com.facebook.appevents.RestrictiveDataManager.updateFromSetting (RestrictiveDataManager.Java:32) à com.facebook.internal.FetchedAppSettingsManager.parseAppSettingsFromJSON (FetchedAppSettingsManager.Java:323) à com.facebook.internal.FetchedAppSAppsAppler 63) sur com.facebook.internal.FetchedAppSettingsManager $ 1.run (FetchedAppSettingsManager.Java:181) sur Java.util.concurrent.ThreadPoolExecutor.runWorker (ThreadPoolExecutor.Java:1167) sur Java.util.concurrent.ThreadPoolExecutor ($ Worker). ThreadPoolExecutor.Java:641) sur Java.lang.Thread.run (Thread.Java:764)

8
Juan

[~ # ~] modifier [~ # ~] Le problème a été corrigé dans la version 5.1.1.


Revenez à 5.0.3 pour vous en débarrasser. 5.1.0 est en fait crash en production avec cette méthode (il y a rapport de bogue ici ). Les validations de GitHub de ce fichier montrent son plutôt imparfait, la méthode est appelée à partir de plusieurs threads se terminant par un crash simultané car il utilise une ArrayList statique.

Dernièrement, le SDK FB de base est un peu gonflé de trucs inutiles et de code de faible qualité. La "fonctionnalité" des trucs sans code qui ne peut tout simplement pas être désactivée est particulièrement horrible à regarder. Si vous n'avez pas strictement besoin du SDK FB dans votre application, je l'éviterais jusqu'à ce qu'ils comprennent leur merde.

12
Adrian Crețu