This是firebase的一些教程。我正在Firebase中注册应用,获取google-services.json文件,将其粘贴到应用文件中,如教程中所示。还得到令牌。但是,当我尝试从控制台发送通知时,状态失败(我猜MismatchSenderId)。我正在插入与FirebaseInstanceId.getInstance().getToken();
相同的令牌。可能是什么问题?
P.S。当我向使用该应用程序的所有设备发送通知时,它也没有成功。
编辑:清单文件
<!-- Adding Internet Permission -->
<uses-permission android:name="android.permission.INTERNET"/>
<application
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:supportsRtl="true"
android:theme="@style/AppTheme">
<activity android:name=".MainActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<!--
Defining Services
-->
<service
android:name=".MyFirebaseMessagingService">
<intent-filter>
<action android:name="com.google.firebase.MESSAGING_EVENT"/>
</intent-filter>
</service>
<service
android:name=".MyFirebaseInstanceIDService">
<intent-filter>
<action android:name="com.google.firebase.INSTANCE_ID_EVENT"/>
</intent-filter>
</service>
</application>
答案 0 :(得分:2)
请检查是否满足以下所有条件。
- 在控制台中更新SHA 1指纹和包名。
- 从开发者控制台放置一个json配置文件,并将其放在app目录[module level directory]下。
- 在gradle文件中添加这些行。 a)模块gradle:apply plugin:&#39; com.google.gms.google-services&#39; b)项目gradle:classpath&#39; com.google.gms:google-services:3.0.0&#39;
醇>
希望它对你有所帮助......
答案 1 :(得分:0)
您可能没有为您的应用添加正确的SHA1吗? 您可以按this tutorial获取正确的SHA1。然后在控制台firebase上选择项目设置,选择添加SHA1。之后,您需要将google-services.json替换为最新版本。