android - E/com.facebook.appevents.RestrictiveDataManager:updateRulesFromSetting 失败
问题描述
当我从 Android Studio 启动我的应用程序并在我的设备小米米 A2 上安装了 Facebook SDK 时,它会触发相同的错误三次。它不会停止应用程序,但我不知道我是否遗漏了什么,或者只是,这并不重要,但最后,这是一个错误,我想澄清一下。
我在小米 A2 上使用 Android Studio 3.4.1、Android 9,build.gradle 文件中的新子句是implementation 'com.facebook.android:facebook-android-sdk:5.1.0'
. 升级 Facebook SDK 之前未出现错误。
这是出现在 Logcat 中的内容:
2019-06-24 18:24:31.202 25105-25136/com.myapp E/com.facebook.appevents.RestrictiveDataManager:updateRulesFromSetting 失败 org.json.JSONException:在 org.json.JSONTokener.syntaxError 的字符 0 处输入结束(JSONTokener.java:449) 在 org.json.JSONTokener.nextValue(JSONTokener.java:97) 在 org.json.JSONArray.(JSONArray.java:92) 在 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.FetchedAppSettingsManager.access$000(FetchedAppSettingsManager.java: 63) 在 com.facebook.internal.FetchedAppSettingsManager$1.run(FetchedAppSettingsManager.java:181) 在 java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167) 在 java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641) 在 java.lang.Thread.run(Thread .java:764)
解决方案
编辑 该问题已在版本 5.1.1 中修复。
恢复到 5.0.3 以摆脱这种情况。5.1.0 实际上以这种方法在生产中崩溃(这里有一个错误报告)。该文件的 GitHub 提交显示其相当有缺陷,该方法从多个线程调用,导致并发崩溃,因为它使用静态 ArrayList。
最近,核心 FB SDK 有点臃肿,充斥着无用的东西和低质量的代码。甚至无法关闭的无代码东西“功能”尤其令人恐惧。如果您的应用程序中并不严格需要 FB SDK,我会避免使用它,直到他们弄清楚他们的问题。
推荐阅读
- visual-studio - 附加非托管 DLL 以与 VS 安装程序包一起使用
- azure - 如何在 Azure Portal 中监控 Azure Kubernetes Cluster 资源状态?
- symfony - Symfony 4,传递给 .. 的参数 1 必须是 DateTime 的实例,给定 null
- laravel - 无法在组件上导入主 js 文件
- c# - 我可以利用任何类型的 API/RSS 提要来查找 CefSharp 更新,尤其是安全更新吗?
- vb.net - VB.NET 仅从一个字段访问填充组合框
- python - 保持元素计数并检索计数在范围内的元素的数据结构
- python - 如何在 python 中解决这个 random.choice 问题?
- prolog - (序言)我可以抽象出这种模式的所有排列,而不必单独编写每个排列吗?
- c - 当多值列上的 itagSequence = 0 时,什么类型的值返回 JetRetrieveColumns?