Android应用程序未收到Firebase通知

问题描述:

我的Android应用程序未收到任何Firebase通知。当我从火力控制台发送消息时,它是示出了处理完成,并且当行已展开它显示0消息发送,屏幕截图下面的消息的Android应用程序未收到Firebase通知

Screenshot

到期被设定为1分钟。

我已经在清单中添加的FirebaseMessagingServiceFirebaseInstanceIdService,并添加服务这样

<service android:name=".service.TjssFireBaseInstanceIdService"> 
     <intent-filter> 
      <action android:name="com.google.firebase.INSTANCE_ID_EVENT" /> 
     </intent-filter> 
    </service> 
    <service 
     android:name=".service.TjssFireBaseMessagingService"> 
     <intent-filter> 
      <action android:name="com.google.firebase.MESSAGING_EVENT" /> 
     </intent-filter> 
    </service> 

我已经尝试添加

android:enabled="true" 
android:exported="true" 

这是应用程序类的onCreate方法

@Override 
public void onCreate() { 
    super.onCreate(); 
    mGlide = Glide.with(this); 

    String token = FirebaseInstanceId.getInstance().getToken(); 
    if (token != null) 
     M.log("Firebase Token", token); 
} 

我在logcat中有一个有效的标记输出

我做了他们所说的所有文档,但它不起作用。我错过了重要的事情吗?任何帮助将不胜感激

+0

分享您的完整manifesh和应用程序文件,,你的应用程序文件初始化FirebaseInstance? –

+0

我编辑了我的问题并添加了应用程序类的'onCreate'。以及如何初始化Firebase实例? – Sony

你把google-services.json在你的应用程序文件夹? 。如果不是,请将它放在应用程序文件夹中,并查看该文件中的信息,这与您的项目是否相关。尝试通过选择您的应用程序包名称来发送通知。我希望这会起作用。谢谢

+0

我已经在应用程序文件夹 – Sony

+0

中添加了该文件夹,请检查您的包名称 –

+0

将清单中的包复制到Firebase控制台 – Sony

确保您的应用程序在发送通知时未运行。如果你的应用程序在前台,那么你将无法收到通知。

如果你想收到通知时,您的应用程序是在前台,编辑您的服务如下:当收到一个通知,您的应用程序是在前台

public class TjssFireBaseMessagingService extends FirebaseMessagingService { 

@Override 
public void onMessageReceived(RemoteMessage remoteMessage) { 

    if (remoteMessage.getNotification() != null) { 
     Intent i = new Intent(getApplicationContext(), MainActivity.class); 
     i.putExtra("Val", remoteMessage.getNotification().getTitle()); 
     startActivity(i); 
    } 
} 

@Override 
public void onDeletedMessages() { 
    super.onDeletedMessages(); 
}} 

上面的代码就可以开始您的主要活动。

在应用程序中的onCreate在这里添加此

FirebaseApp.initializeApp(this); 

这个意义方面