提问人:Sajid 提问时间:11/16/2023 更新时间:11/16/2023 访问量:31
致命异常:com.google.android.gms.tasks.RuntimeExecutionException:com.google.firebase.firestore.FirebaseFirestoreException:PERMISSION_DENIED
Fatal Exception: com.google.android.gms.tasks.RuntimeExecutionException: com.google.firebase.firestore.FirebaseFirestoreException: PERMISSION_DENIED
问:
PERMISSION_DENIED:权限缺失或不足。
com.google.firebase.firestore.FirebaseFirestoreException
我在 google playstore 上有几个使用 Firestore 作为后端的 Android 应用程序。所有应用程序都有大量的 DAU。它们长期以来一直运行良好,但昨晚,我注意到 Firebase Crashlytics 仪表板中的崩溃报告激增。他们都有相同的例外:
Fatal Exception: com.google.android.gms.tasks.RuntimeExecutionException com.google.firebase.firestore.FirebaseFirestoreException: PERMISSION_DENIED: Missing or insufficient permissions.
奇怪的是,这个异常在凌晨 01:00 到 07:00 AM (UTC+5) 之间同时发生在多个应用程序中,然后停止了。我最近没有更改代码或Firestore规则中的任何内容。我试图在我的设备上重现该问题,但一切按预期工作。我还检查了 Firestore 的使用情况和配额,它们远低于限制。
以下是 Firebase Crashlytics 信息中心的一些屏幕截图,其中显示了崩溃报告:
下面是堆栈跟踪:
Caused by com.google.firebase.firestore.FirebaseFirestoreException: PERMISSION_DENIED: Missing or insufficient permissions.
at com.google.firebase.firestore.util.Util.exceptionFromStatus(Util.java:112)
at com.google.firebase.firestore.core.EventManager.onError(EventManager.java:166)
at com.google.firebase.firestore.core.SyncEngine.removeAndCleanupTarget(SyncEngine.java:596)
at com.google.firebase.firestore.core.SyncEngine.handleRejectedListen(SyncEngine.java:432)
at com.google.firebase.firestore.core.MemoryComponentProvider$RemoteStoreCallback.handleRejectedListen(MemoryComponentProvider.java:104)
at com.google.firebase.firestore.remote.RemoteStore.processTargetError(RemoteStore.java:581)
at com.google.firebase.firestore.remote.RemoteStore.handleWatchChange(RemoteStore.java:465)
at com.google.firebase.firestore.remote.RemoteStore.access$100(RemoteStore.java:57)
at com.google.firebase.firestore.remote.RemoteStore$1.onWatchChange(RemoteStore.java:180)
at com.google.firebase.firestore.remote.WatchStream.onNext(WatchStream.java:109)
at com.google.firebase.firestore.remote.WatchStream.onNext(WatchStream.java:38)
at com.google.firebase.firestore.remote.AbstractStream$StreamObserver.lambda$onNext$1$com-google-firebase-firestore-remote-AbstractStream$StreamObserver(AbstractStream.java:119)
at com.google.firebase.firestore.remote.AbstractStream$StreamObserver$$ExternalSyntheticLambda2.run(:4)
at com.google.firebase.firestore.remote.AbstractStream$CloseGuardedRunner.run(AbstractStream.java:67)
at com.google.firebase.firestore.remote.AbstractStream$StreamObserver.onNext(AbstractStream.java:110)
at com.google.firebase.firestore.remote.FirestoreChannel$1.onMessage(FirestoreChannel.java:140)
at io.grpc.internal.ClientCallImpl$ClientStreamListenerImpl$1MessagesAvailable.runInternal(ClientCallImpl.java:661)
at io.grpc.internal.ClientCallImpl$ClientStreamListenerImpl$1MessagesAvailable.runInContext(ClientCallImpl.java:646)
at io.grpc.internal.ContextRunnable.run(ContextRunnable.java:37)
at io.grpc.internal.SerializingExecutor.run(SerializingExecutor.java:133)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:462)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:301)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
at com.google.firebase.firestore.util.AsyncQueue$SynchronizedShutdownAwareExecutor$DelayedStartFactory.run(AsyncQueue.java:234)
at java.lang.Thread.run(Thread.java:919)
我想知道是什么原因导致多个应用程序中同时出现此权限被拒绝异常,以及如何防止它再次发生。Firebase 服务器或网络连接是否可能存在一些临时问题? 还有其他人遇到过这个问题吗?
我试图重现该问题,但未能成功。
答: 暂无答案
评论