Firebase 应用内消息 - PERMISSION_DENIED(请求被阻止的问题)在 Android
Firebase In-App Messaging - PERMISSION_DENIED (Requests blocked issue) in Android
最近我在现有项目中设置了 Firebase 应用内消息,但是当我 运行 测试应用程序时,我遇到了 PERMISSION_DENIED 问题。该项目已经使用了 firebase 的许多其他服务,如 FCM、动态链接、Crashlytics 等,并且一切正常。请帮帮忙。
我做过的配置
应用中的依赖项gradle
implementation 'com.google.firebase:firebase-core:17.2.1'
implementation 'com.google.firebase:firebase-inappmessaging-display:19.0.2'
Firebase 日志是
I/FIAM.Headless: Starting InAppMessaging runtime with Instance ID cNqdR69UnlM
I/FIAM.Headless: Setting display event listener
I/FIAM.Headless: went foreground
I/FIAM.Headless: Forcing fetch from service rather than cache. Test Device: false | App Fresh Install: true
I/FIAM.Headless: Recoverable exception while reading cache: /data/user/0/com.social.dapp.debug/files/fiam_impressions_store_file (No such file or directory)
I/FIAM.Headless: Fetching campaigns from service.
I/FIAM.Headless: Removing display event listener
W/FIAM.Headless: Service fetch error: PERMISSION_DENIED: Requests from this Android client application com.social.dapp.debug are blocked.
I/FIAM.Headless: Setting display event listener
I/FIAM.Headless: Removing display event listener
您必须在 Firebase 中为您的应用添加规则,请转到:
Firebase 控制台 -> select 你的项目 -> 数据库 -> 规则 -> 并添加:
允许阅读
允许写入
出于安全考虑,我建议您先阅读这篇文章
我在 github firebase/firebase-android-sdk 存储库 (https://github.com/firebase/firebase-android-sdk/issues/133) 上看到了一个像你这样的问题,他们解决了它重新导入 google-services.json 来自控制台。
它开始在我的发布版本中工作。昨天我构建了签名的应用程序并将其上传到 Play 商店,在该应用程序中,应用程序内消息传递工作得非常好,我仍然不知道为什么它在调试应用程序中不起作用,而我也为调试应用程序配置了正确的 SHA1 和firebase 的所有其他服务在调试中也能正常工作。
最近我在现有项目中设置了 Firebase 应用内消息,但是当我 运行 测试应用程序时,我遇到了 PERMISSION_DENIED 问题。该项目已经使用了 firebase 的许多其他服务,如 FCM、动态链接、Crashlytics 等,并且一切正常。请帮帮忙。
我做过的配置
应用中的依赖项gradle
implementation 'com.google.firebase:firebase-core:17.2.1'
implementation 'com.google.firebase:firebase-inappmessaging-display:19.0.2'
Firebase 日志是
I/FIAM.Headless: Starting InAppMessaging runtime with Instance ID cNqdR69UnlM
I/FIAM.Headless: Setting display event listener
I/FIAM.Headless: went foreground
I/FIAM.Headless: Forcing fetch from service rather than cache. Test Device: false | App Fresh Install: true
I/FIAM.Headless: Recoverable exception while reading cache: /data/user/0/com.social.dapp.debug/files/fiam_impressions_store_file (No such file or directory)
I/FIAM.Headless: Fetching campaigns from service.
I/FIAM.Headless: Removing display event listener
W/FIAM.Headless: Service fetch error: PERMISSION_DENIED: Requests from this Android client application com.social.dapp.debug are blocked.
I/FIAM.Headless: Setting display event listener
I/FIAM.Headless: Removing display event listener
您必须在 Firebase 中为您的应用添加规则,请转到:
Firebase 控制台 -> select 你的项目 -> 数据库 -> 规则 -> 并添加: 允许阅读 允许写入
出于安全考虑,我建议您先阅读这篇文章
我在 github firebase/firebase-android-sdk 存储库 (https://github.com/firebase/firebase-android-sdk/issues/133) 上看到了一个像你这样的问题,他们解决了它重新导入 google-services.json 来自控制台。
它开始在我的发布版本中工作。昨天我构建了签名的应用程序并将其上传到 Play 商店,在该应用程序中,应用程序内消息传递工作得非常好,我仍然不知道为什么它在调试应用程序中不起作用,而我也为调试应用程序配置了正确的 SHA1 和firebase 的所有其他服务在调试中也能正常工作。