2016-08-03 13 views
0

FCMを使用するのが初めてです。Android搭載端末を使用します。アプリを終了するときにFCMによる通知を受信

バックグラウンドで実行されないアプリを終了すると、デバイスに通知が送信されます。アプリを再オープンすると、前に送信した通知は表示されません。

FCMでは正常ですか?それが正常であれば、どうすれば私のメッセージを知ることができますか本当に届くデバイス?それが正常でない場合、私は何をすべきですか?

公式のgithub.IからダウンロードしたFCMサンプルを使用します。アプリがアクティブであるか、バックグラウンドで実行されているときに通知を正常に受け取ることができます。

<?xml version="1.0" encoding="utf-8"?> 
<manifest xmlns:android="http://schemas.android.com/apk/res/android" 
    package="com.google.firebase.quickstart.fcm"> 

    <application 
     android:allowBackup="true" 
     android:icon="@mipmap/ic_launcher" 
     android:label="@string/app_name" 
     android:theme="@style/AppTheme"> 
     <activity 
      android:name="com.google.firebase.quickstart.fcm.MainActivity" 
      android:label="@string/app_name"> 
      <intent-filter> 
       <action android:name="android.intent.action.MAIN" /> 
       <category android:name="android.intent.category.LAUNCHER" /> 
      </intent-filter> 
     </activity> 

     <!-- [START firebase_service] --> 
     <service android:name=".MyFirebaseMessagingService"> 
      <intent-filter> 
       <action android:name="com.google.firebase.MESSAGING_EVENT" /> 
      </intent-filter> 
     </service> 
     <!-- [END firebase_service] --> 
     <!-- [START firebase_iid_service] --> 
     <service android:name=".MyFirebaseInstanceIDService"> 
      <intent-filter> 
       <action android:name="com.google.firebase.INSTANCE_ID_EVENT" /> 
      </intent-filter> 
     </service> 
     <!-- [END firebase_iid_service] --> 

     <service android:name=".RegistrationIntentService" /> 
    </application> 

</manifest> 

これは私が送るものですアプリが閉じているときにFCMがメッセージを受信しません

{ 
    "notification" : { 
     "body" : "fsdf19", 
     "title" : "fsdfsd" 
    }, 
    "data":{ 
    "body":"adfadffdasdfafasdfasf", 
    "title":"asdfadfaf" 
    } 

    "priority":"high", 
    "registration_ids" : ["dVWKLIPn7J4:APA91bFv1U5IG8-YOrjNsWIDJsj4sCACGOi-f6FRv4ebr-fhQIT1wL6yzyVoK3rMIAfXAYpj2qkumvqf1pqwtIcv18MDdFtt_RCge-t0acN15htbEd_EAHmU41lGHaVAbq_g_58sDewy"] 
} 
+1

をマニフェストの実装/コードとFCMの統合 – gaara87

+0

は、私はagain.Thanksあなたのプロンプトを編集した提供してください@ gaara87 – wyx

+0

私は思います。 .MyFirebaseMessagingServiceがバックグラウンドにあるときにデータメッセージを受信することができます。そうでない場合、通知は通知バーに表示されます。アプリに通知を常に処理させたい場合は、プッシュメッセージの「通知」部分を削除してみてください。 – jonDoe

答えて

0

/停止。サービスを開始してメッセージを処理するには、アプリが実行中かバックグラウンドである必要があります。

+0

*あなたのアプリが閉鎖/停止時にFCMはメッセージを受け取らない*私はそうではないと思う。あなたの主張をバックアップするソースがありますか? –

+0

停止しているAndroid 3.1のアプリケーションは、ブロードキャストで起動されるべきではありません。 「停止したアプリケーションのコントロールを起動する」セクションを参照してください。https://developer.android.com/about/versions/android-3.1.html –

+0

FCMは、あなたのアプリケーションが終了/停止するとメッセージを受信しません。私はそうは思わない本当です。アプリケーションのサービスがシャットダウンされると、FCMは受信されません。 – tenki

1

Firebaseコンソールから送信されるメッセージは、アプリがのフォアグラウンドにある場合にのみ表示されます。

アプリがバックグラウンドのときにメッセージを処理するには、データメッセージを送信する必要があります。

このリンクを参照してください:https://stackoverflow.com/a/37845174/3152278

enter image description here

+0

私が尋ねたいのは、アプリがフォアグラウンドでもバックグラウンドでもないときです。アプリを完全に閉じたときに、私がそれを開いた後で通知を受け取ることはできますか? – wyx

+0

ありがとう@Abhishek助けて! – Aashish

関連する問題