Итак, я реализовал FCM для уведомлений. Таким образом, мы также можем отправить некоторые данные вместе с уведомлением, используя Firebase Cloud Messaging. Здесь я создал канал и зарегистрировал устройство в "общей" теме.
Вот мой код:
пакет com.femindharamshi.fcmtrial;
import android.app.NotificationManager;
import android.content.Context;
import android.content.SharedPreferences;
import android.support.v4.app.NotificationCompat;
import android.support.v4.app.NotificationManagerCompat;
import android.util.Log;
import com.google.firebase.messaging.FirebaseMessagingService;
import com.google.firebase.messaging.RemoteMessage;
import java.util.Map;
public class MyFirebaseMessagingService extends FirebaseMessagingService {
@Override
public void onMessageReceived(RemoteMessage remoteMessage) {
super.onMessageReceived(remoteMessage);
Map m = remoteMessage.getData();
showNotification(remoteMessage.getNotification().getTitle(), remoteMessage.getNotification().getBody(), m);
Class me = remoteMessage.getClass();
Log.d("MessageDateRecieved", ""+me.toString());
}
public void showNotification(String title, String message, Map m) {
NotificationCompat.Builder builder = new NotificationCompat.Builder(this, "MyNotifications")
.setContentTitle(title)
.setSmallIcon(R.drawable.small_logo)
.setAutoCancel(true)
.setContentText(message);
NotificationManagerCompat manager = NotificationManagerCompat.from(this);
manager.notify(999, builder.build());
}
}
Теперь у меня есть следующие 2 проблемы:
- Когда приложение не запущено/не убито, логотип уведомления (R.drawable.small_logo), находящийся в моей папке res/drawable, не отображается, вместо этого отображается серый кружок. Как мне решить эту проблему.
- Если я передам данные через это сообщение, я смогу зафиксировать их на карте. Теперь изображение приложения не запущено, и я хочу сохранить эти данные в SharedPreferences, тогда как это возможно?
getextra
- person Rahulrr2602   schedule 23.05.2019