Код: Выделить всё
package com.example.firetoken.service;
import android.content.pm.PackageManager;
import android.util.Log;
import androidx.core.app.ActivityCompat;
import androidx.core.app.NotificationCompat;
import androidx.core.app.NotificationManagerCompat;
import com.example.firetoken.R;
import com.google.firebase.messaging.FirebaseMessagingService;
import com.google.firebase.messaging.RemoteMessage;
public class MyFirebaseMessagingService extends FirebaseMessagingService {
private static final String TAG = "MyFirebaseService";
// Called whenever a new FCM registration token is generated
@Override
public void onNewToken(String token) {
super.onNewToken(token);
Log.d(TAG, "FCM Token: " + token);
// TODO: send this token to your server if needed
}
// Called when a new FCM message is received
@Override
public void onMessageReceived(RemoteMessage message) {
super.onMessageReceived(message);
Log.d(TAG, "FCM Token message123123: " + message);
NotificationCompat.Builder builder = new NotificationCompat.Builder(this, "fcm_notification")
.setSmallIcon(R.drawable.ic_launcher_background)
.setContentTitle(message.getNotification().getTitle())
.setContentText(message.getNotification().getBody())
.setAutoCancel(true);
NotificationManagerCompat notificationManagerCompat = NotificationManagerCompat.from(this);
if (ActivityCompat.checkSelfPermission(this, android.Manifest.permission.POST_NOTIFICATIONS) != PackageManager.PERMISSION_GRANTED) {
// TODO: Consider calling
// ActivityCompat#requestPermissions
// here to request the missing permissions, and then overriding
// public void onRequestPermissionsResult(int requestCode, String[] permissions,
// int[] grantResults)
// to handle the case where the user grants the permission. See the documentation
// for ActivityCompat#requestPermissions for more details.
return;
}
notificationManagerCompat.notify(111, builder.build());
}
}
< /code>
manifest: < /p>
< /code>
Этот журнал от Android Firebase < /p>
Инициализация Firebaseapp Успешная < /p>
< /blockquote>
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
EdgeToEdge.enable(this);
setContentView(R.layout.activity_main);
ViewCompat.setOnApplyWindowInsetsListener(findViewById(R.id.main), (v, insets) -> {
Insets systemBars = insets.getInsets(WindowInsetsCompat.Type.systemBars());
v.setPadding(systemBars.left, systemBars.top, systemBars.right, systemBars.bottom);
return insets;
});
// Initialize Firebase
FirebaseApp.initializeApp(this);
// Enable FCM auto-init (important!)
FirebaseMessaging.getInstance().setAutoInitEnabled(true);
Log.d("TAG", "Firebase initialized manually");
// 🔹 Fetch token at startup
FirebaseMessaging.getInstance().getToken()
.addOnCompleteListener(task -> {
if (!task.isSuccessful()) {
Log.w("FCM", "Fetching FCM registration token failed", task.getException());
return;
}
// Get new FCM token
String token = task.getResult();
Log.d("FCM", "Initial token: " + token);
});
}
Так что с этим?
Подробнее здесь: https://stackoverflow.com/questions/797 ... radlew-8-4