Android FCM通知在发布应用程序中不起作用
我试图在发布应用程序中发送Android FCM通知在发布应用程序中不起作用,android,firebase,push-notification,google-play,firebase-cloud-messaging,Android,Firebase,Push Notification,Google Play,Firebase Cloud Messaging,我试图在发布应用程序中发送FCM通知(在用户之间发送消息、好友请求等),但他们在调试apk中发送/接收得非常好,我已经搜索了这一点,并找到了一些不适合我的解决方案 像这样,我把它放在职业后卫规则中,但不起作用 -keep class com.google.firebase.* {*;} 在我的AndroidManifest.xml中 <service android:name=".notifications.MyFirebaseMess
FCM
通知(在用户之间发送消息、好友请求等),但他们在调试apk中发送/接收得非常好,我已经搜索了这一点,并找到了一些不适合我的解决方案
像这样,我把它放在职业后卫规则中,但不起作用
-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>
您从右jks文件路径获得SHA-1密钥了吗?您从右jks文件路径获得SHA-1密钥了吗?您没有将发布版的SHA-1密钥添加到firebase控制台,因此您的google-services.json中不存在
生成要发布的SHA-1
将您的版本SHA-1添加到firebase控制台
下载并使用新的google-services.json
如果您正在使用Google play应用程序签名。确保play store用于签署发行版的密钥也已在步骤2中添加。您尚未将发行版的SHA-1密钥添加到firebase控制台,因此您的google-services.json中不存在该密钥
生成要发布的SHA-1
将您的版本SHA-1添加到firebase控制台
下载并使用新的google-services.json
如果您正在使用Google play应用程序签名。确保play store用于签署您的发行版的密钥也添加到第2步中我昨晚刷牙时自己找到了问题的解决方案。
这两个答案都给了我很大的帮助,因为我不知道发布版本需要一个SHA密钥,所以它们对我很有帮助
我已成功生成SHA密钥并将其存储在firebase控制台中,但通知仍不起作用,因此我发现我不允许通过Proguard规则访问firebase通知服务,因此我只在此处添加了这一行
-keepclassmembers class com.example.app.notifications.* {
*;
}
现在它神奇地工作了。我昨晚刷牙时自己找到了解决问题的办法。
这两个答案都给了我很大的帮助,因为我不知道发布版本需要一个SHA密钥,所以它们对我很有帮助
我已成功生成SHA密钥并将其存储在firebase控制台中,但通知仍不起作用,因此我发现我不允许通过Proguard规则访问firebase通知服务,因此我只在此处添加了这一行
-keepclassmembers class com.example.app.notifications.* {
*;
}
现在它神奇地工作了。我不知道路径是否正确,但它应该在哪里?对于调试,有一个不同的SHA-1密钥,对于发布,有一个不同的密钥。对于released,您需要创建一个jks文件,然后在为released创建SHA-1时需要添加该文件的路径。我在这里找到了我的密钥C:\Users\SRT\Desktop\TeamUp key\key.jksy您可以检查此链接是否对您有效?我不知道路径是否正确,但应该在哪里?用于调试,有一个不同的SHA-1密钥,对于已发布的,有一个不同的密钥。对于released,您需要创建一个jks文件,然后在为released创建SHA-1时需要添加该文件的路径。我在这里找到了我的密钥C:\Users\SRT\Desktop\TeamUp key\key.jksy您可以检查此链接是否对您有效?我已逐步尝试了您的解决方案,但对我无效,请告诉我任何其他解决方案。谢谢你告诉我答案的步骤。我已经一步一步地尝试了你的解决方案,但它对我无效。请告诉我任何其他解决方案。谢谢你告诉我答案的步骤