ネットワークに接続する必要があるため、AndroidManifest.xmlファイルでインターネットのアクセス許可を追加してください。また、Androidデバイスで通知アラートが生成されるため、[振動]を追加してください。 のAndroidManifest.xml
<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.VIBRATE"/>
はまた、バックグラウンドでアプリに通知を受けた後、メッセージを処理するためにFirebaseMessagingServiceを拡張するサービスのエントリを追加します。このサービスを拡張します。アプリで通知を受け取る。これは、アプリがアクティブでない間にアンドロイドプッシュ通知が機能するためには絶対に必要です。
<service
android:name=".MyAndroidFirebaseMessagingService">
<intent-filter>
<action android:name="com.google.firebase.MESSAGING_EVENT"/>
</intent-filter>
</service>
登録トークンのライフサイクルを処理するために使用されるFirebaseInstanceIdServiceを拡張するサービスのエントリを追加します。これは、特定のデバイス/デバイスグループにメッセージを送信するために必要です。
<service
android:name=".MyAndroidFirebaseInstanceIDService">
<intent-filter>
<action android:name="com.google.firebase.INSTANCE_ID_EVENT"/>
</intent-filter>
</service>
機能 は、新しいJavaクラスMyAndroidFirebaseMsgServiceを作成し、次のコードを追加します追加。 FirebaseMessagingServiceを拡張するサービスです。バックグラウンドであらゆる種類のメッセージ処理を実行し、利用可能になるとプッシュ通知を送信します。
public class MyAndroidFirebaseMsgService extends FirebaseMessagingService {
private static final String TAG = "MyAndroidFCMService";
@Override
public void onMessageReceived(RemoteMessage remoteMessage) {
Log.d(TAG, "From: " + remoteMessage.getFrom());
Log.d(TAG, "Notification Message Body: " +
remoteMessage.getNotification().getBody());
//create notification
createNotification(remoteMessage.getNotification().getBody());
}
private void createNotification(String messageBody) {
Intent intent = new Intent(this , ResultActivity. class);
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
PendingIntent resultIntent = PendingIntent.getActivity(this , 0, intent,
PendingIntent.FLAG_ONE_SHOT);
Uri notificationSoundURI = RingtoneManager.getDefaultUri(RingtoneManager.TYPE_NOTIFICATION);
NotificationCompat.Builder mNotificationBuilder = new NotificationCompat.Builder(this)
.setSmallIcon(R.mipmap.ic_launcher)
.setContentTitle("Bingo")
.setContentText(messageBody)
.setAutoCancel(true)
.setSound(notificationSoundURI)
.setContentIntent(resultIntent);
NotificationManager notificationManager =
(NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);
notificationManager.notify(0, mNotificationBuilder.build());
}
}
メッセージ受信時に、OnMessageReceived()が呼び出されます。この関数の中で、LogCatコンソールにメッセージを記録し、メッセージテキストとともにcreateNotification()を呼び出します。 createNotification()メソッドはアンドロイド通知エリアにプッシュ通知を作成します。
プッシュ通知を送信する方法を教えてください。 –
googleのfcm – Sushrita
自分のサーバーまたはfcmコンソールを使用していますか? –