discord-jadx/app/src/main/java/com/google/firebase/messaging/FirebaseMessagingService.java

260 lines
10 KiB
Java

package com.google.firebase.messaging;
import android.content.Context;
import android.content.Intent;
import android.content.SharedPreferences;
import android.content.pm.ApplicationInfo;
import android.content.pm.PackageManager;
import android.os.Bundle;
import android.text.TextUtils;
import android.util.Log;
import androidx.annotation.NonNull;
import androidx.annotation.WorkerThread;
import c.i.a.b.b;
import c.i.a.b.g;
import c.i.a.f.e.o.j.a;
import c.i.c.p.h.d;
import c.i.c.s.v;
import c.i.c.w.c;
import c.i.c.w.m;
import c.i.c.w.p;
import c.i.c.w.q;
import c.i.c.w.r;
import com.google.firebase.encoders.EncodingException;
import java.util.ArrayDeque;
import java.util.Queue;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
/* compiled from: com.google.firebase:firebase-messaging@@21.0.0 */
public class FirebaseMessagingService extends EnhancedIntentService {
public static final String ACTION_DIRECT_BOOT_REMOTE_INTENT = "com.google.firebase.messaging.RECEIVE_DIRECT_BOOT";
private static final Queue<String> recentlyReceivedMessageIds = new ArrayDeque(10);
private boolean alreadyReceivedMessage(String str) {
if (TextUtils.isEmpty(str)) {
return false;
}
Queue<String> queue = recentlyReceivedMessageIds;
if (!queue.contains(str)) {
if (queue.size() >= 10) {
queue.remove();
}
queue.add(str);
return false;
} else if (!Log.isLoggable("FirebaseMessaging", 3)) {
return true;
} else {
String valueOf = String.valueOf(str);
Log.d("FirebaseMessaging", valueOf.length() != 0 ? "Received duplicate message: ".concat(valueOf) : new String("Received duplicate message: "));
return true;
}
}
private void dispatchMessage(Intent intent) {
Bundle extras = intent.getExtras();
if (extras == null) {
extras = new Bundle();
}
extras.remove("androidx.content.wakelockid");
if (r.f(extras)) {
r rVar = new r(extras);
ExecutorService newSingleThreadExecutor = Executors.newSingleThreadExecutor(new a("Firebase-Messaging-Network-Io"));
try {
if (!new c(this, rVar, newSingleThreadExecutor).a()) {
newSingleThreadExecutor.shutdown();
if (q.c(intent)) {
q.b("_nf", intent);
}
} else {
return;
}
} finally {
newSingleThreadExecutor.shutdown();
}
}
onMessageReceived(new RemoteMessage(extras));
}
private String getMessageId(Intent intent) {
String stringExtra = intent.getStringExtra("google.message_id");
return stringExtra == null ? intent.getStringExtra("message_id") : stringExtra;
}
private void handleMessageIntent(Intent intent) {
if (!alreadyReceivedMessage(intent.getStringExtra("google.message_id"))) {
passMessageIntentToSdk(intent);
}
}
private void handleNotificationOpen(Intent intent) {
if (q.c(intent)) {
if (intent != null) {
if ("1".equals(intent.getStringExtra("google.c.a.tc"))) {
c.i.c.c b = c.i.c.c.b();
b.a();
c.i.c.j.a.a aVar = (c.i.c.j.a.a) b.g.a(c.i.c.j.a.a.class);
if (Log.isLoggable("FirebaseMessaging", 3)) {
Log.d("FirebaseMessaging", "Received event with track-conversion=true. Setting user property and reengagement event");
}
if (aVar != null) {
String stringExtra = intent.getStringExtra("google.c.a.c_id");
aVar.b("fcm", "_ln", stringExtra);
Bundle bundle = new Bundle();
bundle.putString("source", "Firebase");
bundle.putString("medium", "notification");
bundle.putString("campaign", stringExtra);
aVar.a("fcm", "_cmp", bundle);
} else {
Log.w("FirebaseMessaging", "Unable to set user property for conversion tracking: analytics library is missing");
}
} else if (Log.isLoggable("FirebaseMessaging", 3)) {
Log.d("FirebaseMessaging", "Received event with track-conversion=false. Do not set user property");
}
}
q.b("_no", intent);
}
}
private void passMessageIntentToSdk(Intent intent) {
ApplicationInfo applicationInfo;
Bundle bundle;
String stringExtra = intent.getStringExtra("message_type");
if (stringExtra == null) {
stringExtra = "gcm";
}
char c2 = 65535;
boolean z2 = false;
switch (stringExtra.hashCode()) {
case -2062414158:
if (stringExtra.equals("deleted_messages")) {
c2 = 0;
break;
}
break;
case 102161:
if (stringExtra.equals("gcm")) {
c2 = 1;
break;
}
break;
case 814694033:
if (stringExtra.equals("send_error")) {
c2 = 2;
break;
}
break;
case 814800675:
if (stringExtra.equals("send_event")) {
c2 = 3;
break;
}
break;
}
switch (c2) {
case 0:
onDeletedMessages();
return;
case 1:
if (q.c(intent)) {
q.b("_nr", intent);
}
if (!"com.google.firebase.messaging.RECEIVE_DIRECT_BOOT".equals(intent.getAction())) {
try {
c.i.c.c.b();
c.i.c.c b = c.i.c.c.b();
b.a();
Context context = b.d;
SharedPreferences sharedPreferences = context.getSharedPreferences("com.google.firebase.messaging", 0);
if (sharedPreferences.contains("export_to_big_query")) {
z2 = sharedPreferences.getBoolean("export_to_big_query", false);
} else {
try {
PackageManager packageManager = context.getPackageManager();
if (!(packageManager == null || (applicationInfo = packageManager.getApplicationInfo(context.getPackageName(), 128)) == null || (bundle = applicationInfo.metaData) == null || !bundle.containsKey("delivery_metrics_exported_to_big_query_enabled"))) {
z2 = applicationInfo.metaData.getBoolean("delivery_metrics_exported_to_big_query_enabled", false);
}
} catch (PackageManager.NameNotFoundException unused) {
}
}
} catch (IllegalStateException unused2) {
Log.i("FirebaseMessaging", "FirebaseApp has not being initialized. Device might be in direct boot mode. Skip exporting delivery metrics to Big Query");
}
}
if (z2) {
g gVar = FirebaseMessaging.a;
if (gVar != null) {
try {
gVar.a("FCM_CLIENT_EVENT_LOGGING", String.class, new b("json"), p.a).a(new c.i.a.b.a(null, ((d) q.a).a(new m.b(new m("MESSAGE_DELIVERED", intent))), c.i.a.b.d.VERY_LOW));
} catch (EncodingException unused3) {
Log.d("FirebaseMessaging", "Failed to encode big query analytics payload. Skip sending");
}
} else {
Log.e("FirebaseMessaging", "TransportFactory is null. Skip exporting message delivery metrics to Big Query");
}
}
dispatchMessage(intent);
return;
case 2:
onSendError(getMessageId(intent), new SendException(intent.getStringExtra("error")));
return;
case 3:
onMessageSent(intent.getStringExtra("google.message_id"));
return;
default:
Log.w("FirebaseMessaging", stringExtra.length() != 0 ? "Received message with unknown type: ".concat(stringExtra) : new String("Received message with unknown type: "));
return;
}
}
@Override // com.google.firebase.messaging.EnhancedIntentService
public Intent getStartCommandIntent(Intent intent) {
return v.a().e.poll();
}
@Override // com.google.firebase.messaging.EnhancedIntentService
public void handleIntent(Intent intent) {
String action = intent.getAction();
if ("com.google.android.c2dm.intent.RECEIVE".equals(action) || "com.google.firebase.messaging.RECEIVE_DIRECT_BOOT".equals(action)) {
handleMessageIntent(intent);
} else if ("com.google.firebase.messaging.NOTIFICATION_DISMISS".equals(action)) {
if (q.c(intent)) {
q.b("_nd", intent);
}
} else if ("com.google.firebase.messaging.NEW_TOKEN".equals(action)) {
onNewToken(intent.getStringExtra("token"));
} else {
String valueOf = String.valueOf(intent.getAction());
Log.d("FirebaseMessaging", valueOf.length() != 0 ? "Unknown intent action: ".concat(valueOf) : new String("Unknown intent action: "));
}
}
@Override // com.google.firebase.messaging.EnhancedIntentService
public boolean handleIntentOnMainThread(Intent intent) {
if (!"com.google.firebase.messaging.NOTIFICATION_OPEN".equals(intent.getAction())) {
return false;
}
handleNotificationOpen(intent);
return true;
}
@WorkerThread
public void onDeletedMessages() {
}
@WorkerThread
public void onMessageReceived(@NonNull RemoteMessage remoteMessage) {
}
@WorkerThread
public void onMessageSent(@NonNull String str) {
}
@WorkerThread
public void onNewToken(@NonNull String str) {
}
@WorkerThread
public void onSendError(@NonNull String str, @NonNull Exception exc) {
}
}