android - FCM 通知在发布应用程序中不起作用

标签 android firebase push-notification google-play firebase-cloud-messaging

我正在尝试在未接收但他们在调试 apk 中发送/接收很好的发布应用程序中发送 FCM 通知(在用户之间发送消息、好友请求等),我有对此进行了搜索,发现一些对我不起作用的解决方案

像这样,我把它放在 pro-guard 规则中但不起作用

 -keep class com.google.firebase.* {*;}

在我的 AndroidManifest.xml 中

        <service
            android:name=".notifications.MyFirebaseMessaging"
            android:enabled="true"
            android:exported="false">
            <intent-filter>
                <action android:name="com.google.firebase.MESSAGING_EVENT" />
            </intent-filter>
        </service>

        <service
            android:name=".notifications.MyFirebaseInstanceId"
            android:enabled="true"
            android:exported="false">
            <intent-filter>
                <action android:name="com.google.firebase.INSTANCE_ID_EVENT" />
            </intent-filter>
        </service>

和其他依赖项,我在这里不包括它们,因为应用程序在 Debug模式下工作正常

已编辑

我已经有了

  1. 生成的版本 SHA-1 和 SHA-256 key
  2. 在 Firebase 控制台中添加它们
  3. 还在 firebase 中添加了 Google 控制台应用签名 SHA-1 和 SHA-256 key
  4. 然后下载 Google-services.json 文件并添加到 app 模块中

enter image description here enter image description here

最佳答案

您尚未将用于发布的 SHA-1 key 添加到您的 firebase 控制台,因此在您的 google-services.json 中不存在。

  1. 为发布生成 SHA-1
  2. 将您的版本 SHA-1 添加到 Firebase 控制台
  3. 下载并使用新的 google-services.json。

如果您使用的是 Google Play 应用签名。确保 Play 商店用于签署您的版本的 key 也在第 2 步中添加

关于android - FCM 通知在发布应用程序中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65488046/

相关文章:

android - 尝试构建 Phonegap 项目时出现 Eclipse 错误

android - E/FirebaseInstanceId : binding to the service failed. Flutter Android

java - 在用户触摸屏幕的地方放置对话框

android - DialogFragment 上的 commitAllowingStateLoss

firebase - Flutter 从 Firebase 返回文档的长度

iphone - 阿拉伯字符 ios 中推送通知消息的最大长度

firebase - 如何为您的 Flutter 应用程序禁用/启用通知声音?

iOS 锁定事件委托(delegate)?

android - 创建类似 "1-day" View 的谷歌日历应用程序布局

angular - 如何解决 "unexpected token : A constructor, method, accessor, or property was expected"错误?