由于它在下面的控制台输出中可见,因此应用程序通常需要7-10秒来处理服务,并且通常无法执行此操作。这种情况发生在每次启动时。
为什么需要这么长时间?是因为服务在放弃之前尝试连接多次?此外,这个输出背后的逻辑是什么?
注意:我的应用程序中没有任何FirebaseAnalytics代码
09-26 23:34:48.998 /package V/FA: Processing queued up service tasks: 1
09-26 23:34:54.009 /package V/FA: Inactivity, disconnecting from AppMeasurementService
09-26 23:34:57.357 /package V/FA: Activity paused, time: 89152495
09-26 23:34:57.383 /package V/FA: onActivityCreated
的build.gradle(APP)
//Firebase
compile 'com.google.firebase:firebase-core:9.4.0'
compile 'com.google.firebase:firebase-database:9.4.0'
compile 'com.google.firebase:firebase-invites:9.4.0'
compile 'com.firebase:geofire-android:2.0.0'
compile 'com.firebaseui:firebase-ui:0.5.1'
答案 0 :(得分:6)
"处理排队服务任务"和"不活动,断开与AppMeasurementService的连接"消息都记录在工作线程上,而不是主应用程序线程上,因此它们不会占用您的应用程序。
排队服务任务的处理几乎可以立即完成;由于不活动导致的断开仅仅意味着没有人要求Firebase Analytics暂时执行任何操作,因此它会断开与其服务的连接,直到有人断开连接。这是正常的,特别是如果您的应用没有拨打FirebaseAnalytics。
"活动暂停"意味着应用程序的当前活动(屏幕)已从显示中删除;这可能是您的应用程序所做的事情或用户操作。因为有一个" onActivityCreated"消息之后,我说你的应用程序摆脱了一个活动,并用另一个活动替换它。
如果没有关于您的应用正在做什么的更多信息,很难猜出为什么该应用可能会有缓慢的响应。
BTW,尝试使用" adb logcat -v threadtime"在日志记录语句中获取进程和线程ID。
答案 1 :(得分:1)
如果您有同样的问题
转到网络设置->>单击您连接的网络->>,然后选择->>更改为专用网络
希望有帮助
答案 2 :(得分:0)
这不是错误消息。它只是firebase没有要报告的事件的消息,它与报告服务断开连接。可能是你没有内部连接或忘记在你的清单中写入权限。如果是,只需添加
<uses-permission android:name="android.permission.INTERNET" />
它解决了我的问题
答案 3 :(得分:0)
首先请确保您使用的是实时数据库而不是Cloud Firebase 然后将规则更改为:
{
"rules": {
".read": true,
".write": true
}
}
并确保您已获得互联网许可
<uses-permission android:name="android.permission.INTERNET" />
再次为我们的项目重新构建对我有用的