feat: Enhance connection handling and add debug logs feature; improve user experience and troubleshooting
This commit is contained in:
@@ -45,14 +45,11 @@ class RosettaFirebaseMessagingService : FirebaseMessagingService() {
|
||||
*/
|
||||
override fun onNewToken(token: String) {
|
||||
super.onNewToken(token)
|
||||
Log.d(TAG, "🔔 New FCM token (short): ${token.take(20)}...")
|
||||
Log.d(TAG, "🔔 New FCM token (FULL): $token")
|
||||
|
||||
// Сохраняем токен локально
|
||||
saveFcmToken(token)
|
||||
|
||||
// 📤 Токен будет отправлен на сервер после успешного логина в MainActivity
|
||||
Log.d(TAG, "💾 FCM token saved. Will be sent to server after login.")
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -60,11 +57,9 @@ class RosettaFirebaseMessagingService : FirebaseMessagingService() {
|
||||
*/
|
||||
override fun onMessageReceived(remoteMessage: RemoteMessage) {
|
||||
super.onMessageReceived(remoteMessage)
|
||||
Log.d(TAG, "📬 Push notification received from: ${remoteMessage.from}")
|
||||
|
||||
// Обрабатываем data payload
|
||||
remoteMessage.data.isNotEmpty().let {
|
||||
Log.d(TAG, "📦 Message data payload: ${remoteMessage.data}")
|
||||
|
||||
val type = remoteMessage.data["type"]
|
||||
val senderPublicKey = remoteMessage.data["sender_public_key"]
|
||||
@@ -78,17 +73,14 @@ class RosettaFirebaseMessagingService : FirebaseMessagingService() {
|
||||
}
|
||||
"message_read" -> {
|
||||
// Сообщение прочитано - можно обновить UI если приложение открыто
|
||||
Log.d(TAG, "📖 Message read by $senderPublicKey")
|
||||
}
|
||||
else -> {
|
||||
Log.d(TAG, "⚠️ Unknown notification type: $type")
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Обрабатываем notification payload (если есть)
|
||||
remoteMessage.notification?.let {
|
||||
Log.d(TAG, "📨 Message Notification Body: ${it.body}")
|
||||
showSimpleNotification(it.title ?: "Rosetta", it.body ?: "New message")
|
||||
}
|
||||
}
|
||||
@@ -181,6 +173,5 @@ class RosettaFirebaseMessagingService : FirebaseMessagingService() {
|
||||
private fun saveFcmToken(token: String) {
|
||||
val prefs = getSharedPreferences("rosetta_prefs", Context.MODE_PRIVATE)
|
||||
prefs.edit().putString("fcm_token", token).apply()
|
||||
Log.d(TAG, "💾 FCM token saved locally")
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user