Files
rr3-apk/decompiled/sources/com/google/android/gms/cloudmessaging/CloudMessagingReceiver.java
Daniel Elliott f9d20bb3fc Add decompiled APK source code (JADX)
- 28,932 files
- Full Java source code
- Smali files
- Resources

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-02-18 14:52:23 -08:00

209 lines
8.7 KiB
Java

package com.google.android.gms.cloudmessaging;
import android.app.PendingIntent;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.os.Bundle;
import android.os.Parcelable;
import android.text.TextUtils;
import android.util.Log;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.annotation.WorkerThread;
import com.google.android.gms.common.util.concurrent.NamedThreadFactory;
import com.google.android.gms.tasks.OnCompleteListener;
import com.google.android.gms.tasks.Task;
import com.google.android.gms.tasks.Tasks;
import java.lang.ref.SoftReference;
import java.util.Objects;
import java.util.concurrent.CountDownLatch;
import java.util.concurrent.Executor;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
import java.util.concurrent.LinkedBlockingQueue;
import java.util.concurrent.ThreadPoolExecutor;
import java.util.concurrent.TimeUnit;
/* loaded from: classes2.dex */
public abstract class CloudMessagingReceiver extends BroadcastReceiver {
@Nullable
private static SoftReference zza;
@Nullable
private static SoftReference zzb;
public static final class IntentActionKeys {
@NonNull
public static final String NOTIFICATION_DISMISS = "com.google.firebase.messaging.NOTIFICATION_DISMISS";
@NonNull
public static final String NOTIFICATION_OPEN = "com.google.firebase.messaging.NOTIFICATION_OPEN";
private IntentActionKeys() {
}
}
public static final class IntentKeys {
@NonNull
public static final String PENDING_INTENT = "pending_intent";
@NonNull
public static final String WRAPPED_INTENT = "wrapped_intent";
private IntentKeys() {
}
}
@WorkerThread
private final int zzb(@NonNull Context context, @NonNull Intent intent) {
PendingIntent pendingIntent = (PendingIntent) intent.getParcelableExtra(IntentKeys.PENDING_INTENT);
if (pendingIntent != null) {
try {
pendingIntent.send();
} catch (PendingIntent.CanceledException unused) {
Log.e("CloudMessagingReceiver", "Notification pending intent canceled");
}
}
Bundle extras = intent.getExtras();
if (extras != null) {
extras.remove(IntentKeys.PENDING_INTENT);
} else {
extras = new Bundle();
}
if (Objects.equals(intent.getAction(), IntentActionKeys.NOTIFICATION_DISMISS)) {
onNotificationDismissed(context, extras);
return -1;
}
Log.e("CloudMessagingReceiver", "Unknown notification action");
return 500;
}
@NonNull
public Executor getBroadcastExecutor() {
ExecutorService executorService;
synchronized (CloudMessagingReceiver.class) {
try {
SoftReference softReference = zza;
executorService = softReference != null ? (ExecutorService) softReference.get() : null;
if (executorService == null) {
com.google.android.gms.internal.cloudmessaging.zze.zza();
executorService = Executors.unconfigurableExecutorService(Executors.newCachedThreadPool(new NamedThreadFactory("firebase-iid-executor")));
zza = new SoftReference(executorService);
}
} catch (Throwable th) {
throw th;
}
}
return executorService;
}
@WorkerThread
public abstract int onMessageReceive(@NonNull Context context, @NonNull CloudMessage cloudMessage);
@WorkerThread
public void onNotificationDismissed(@NonNull Context context, @NonNull Bundle bundle) {
}
@Override // android.content.BroadcastReceiver
public final void onReceive(@NonNull final Context context, @NonNull final Intent intent) {
if (intent == null) {
return;
}
final boolean isOrderedBroadcast = isOrderedBroadcast();
final BroadcastReceiver.PendingResult goAsync = goAsync();
getBroadcastExecutor().execute(new Runnable() { // from class: com.google.android.gms.cloudmessaging.zzh
@Override // java.lang.Runnable
public final void run() {
CloudMessagingReceiver.this.zza(intent, context, isOrderedBroadcast, goAsync);
}
});
}
public final /* synthetic */ void zza(Intent intent, final Context context, boolean z, BroadcastReceiver.PendingResult pendingResult) {
Executor executor;
int i;
try {
Parcelable parcelableExtra = intent.getParcelableExtra(IntentKeys.WRAPPED_INTENT);
Intent intent2 = parcelableExtra instanceof Intent ? (Intent) parcelableExtra : null;
if (intent2 != null) {
i = zzb(context, intent2);
} else if (intent.getExtras() == null) {
i = 500;
} else {
final CloudMessage cloudMessage = new CloudMessage(intent);
final CountDownLatch countDownLatch = new CountDownLatch(1);
synchronized (CloudMessagingReceiver.class) {
try {
SoftReference softReference = zzb;
executor = softReference != null ? (Executor) softReference.get() : null;
if (executor == null) {
com.google.android.gms.internal.cloudmessaging.zze.zza();
ThreadPoolExecutor threadPoolExecutor = new ThreadPoolExecutor(1, 1, 60L, TimeUnit.SECONDS, new LinkedBlockingQueue(), new NamedThreadFactory("pscm-ack-executor"));
threadPoolExecutor.allowCoreThreadTimeOut(true);
executor = Executors.unconfigurableExecutorService(threadPoolExecutor);
zzb = new SoftReference(executor);
}
} finally {
}
}
executor.execute(new Runnable() { // from class: com.google.android.gms.cloudmessaging.zzg
@Override // java.lang.Runnable
public final void run() {
Task zzc;
CloudMessage cloudMessage2 = cloudMessage;
if (TextUtils.isEmpty(cloudMessage2.getMessageId())) {
zzc = Tasks.forResult(null);
} else {
Bundle bundle = new Bundle();
bundle.putString("google.message_id", cloudMessage2.getMessageId());
Integer zza2 = cloudMessage2.zza();
if (zza2 != null) {
bundle.putInt("google.product_id", zza2.intValue());
}
Context context2 = context;
bundle.putBoolean("supports_message_handled", true);
zzc = zzv.zzb(context2).zzc(2, bundle);
}
final CountDownLatch countDownLatch2 = countDownLatch;
zzc.addOnCompleteListener(new Executor() { // from class: com.google.android.gms.cloudmessaging.zze
@Override // java.util.concurrent.Executor
public final void execute(Runnable runnable) {
runnable.run();
}
}, new OnCompleteListener() { // from class: com.google.android.gms.cloudmessaging.zzf
@Override // com.google.android.gms.tasks.OnCompleteListener
public final void onComplete(Task task) {
countDownLatch2.countDown();
}
});
}
});
int onMessageReceive = onMessageReceive(context, cloudMessage);
try {
if (!countDownLatch.await(TimeUnit.SECONDS.toMillis(1L), TimeUnit.MILLISECONDS)) {
Log.w("CloudMessagingReceiver", "Message ack timed out");
}
} catch (InterruptedException e) {
Log.w("CloudMessagingReceiver", "Message ack failed: ".concat(e.toString()));
}
i = onMessageReceive;
}
if (z && pendingResult != null) {
pendingResult.setResultCode(i);
}
if (pendingResult != null) {
pendingResult.finish();
}
} catch (Throwable th) {
if (pendingResult != null) {
pendingResult.finish();
}
throw th;
}
}
}