159 lines
5.5 KiB
Java
159 lines
5.5 KiB
Java
package com.google.android.gms.common.api.internal;
|
|
|
|
import android.app.Activity;
|
|
import android.app.Fragment;
|
|
import android.content.Intent;
|
|
import android.os.Bundle;
|
|
import android.os.Looper;
|
|
import com.google.android.gms.internal.common.zzi;
|
|
import java.io.FileDescriptor;
|
|
import java.io.PrintWriter;
|
|
import java.lang.ref.WeakReference;
|
|
import java.util.Collections;
|
|
import java.util.Iterator;
|
|
import java.util.Map;
|
|
import java.util.WeakHashMap;
|
|
import o.nyh;
|
|
|
|
/* loaded from: classes.dex */
|
|
public final class zzb extends Fragment implements LifecycleFragment {
|
|
private static final WeakHashMap zza = new WeakHashMap();
|
|
private final Map zzb = Collections.synchronizedMap(new nyh());
|
|
private int zzc = 0;
|
|
private Bundle zzd;
|
|
|
|
public static zzb zzc(Activity activity) {
|
|
zzb zzbVar;
|
|
WeakHashMap weakHashMap = zza;
|
|
WeakReference weakReference = (WeakReference) weakHashMap.get(activity);
|
|
if (weakReference != null && (zzbVar = (zzb) weakReference.get()) != null) {
|
|
return zzbVar;
|
|
}
|
|
try {
|
|
zzb zzbVar2 = (zzb) activity.getFragmentManager().findFragmentByTag("LifecycleFragmentImpl");
|
|
if (zzbVar2 == null || zzbVar2.isRemoving()) {
|
|
zzbVar2 = new zzb();
|
|
activity.getFragmentManager().beginTransaction().add(zzbVar2, "LifecycleFragmentImpl").commitAllowingStateLoss();
|
|
}
|
|
weakHashMap.put(activity, new WeakReference(zzbVar2));
|
|
return zzbVar2;
|
|
} catch (ClassCastException e) {
|
|
throw new IllegalStateException("Fragment with tag LifecycleFragmentImpl is not a LifecycleFragmentImpl", e);
|
|
}
|
|
}
|
|
|
|
@Override // com.google.android.gms.common.api.internal.LifecycleFragment
|
|
public final void addCallback(String str, LifecycleCallback lifecycleCallback) {
|
|
if (!this.zzb.containsKey(str)) {
|
|
this.zzb.put(str, lifecycleCallback);
|
|
if (this.zzc > 0) {
|
|
new zzi(Looper.getMainLooper()).post(new zza(this, lifecycleCallback, str));
|
|
return;
|
|
}
|
|
return;
|
|
}
|
|
throw new IllegalArgumentException("LifecycleCallback with tag " + str + " already added to this fragment.");
|
|
}
|
|
|
|
@Override // android.app.Fragment
|
|
public final void dump(String str, FileDescriptor fileDescriptor, PrintWriter printWriter, String[] strArr) {
|
|
super.dump(str, fileDescriptor, printWriter, strArr);
|
|
Iterator it = this.zzb.values().iterator();
|
|
while (it.hasNext()) {
|
|
((LifecycleCallback) it.next()).dump(str, fileDescriptor, printWriter, strArr);
|
|
}
|
|
}
|
|
|
|
@Override // com.google.android.gms.common.api.internal.LifecycleFragment
|
|
public final <T extends LifecycleCallback> T getCallbackOrNull(String str, Class<T> cls) {
|
|
return cls.cast(this.zzb.get(str));
|
|
}
|
|
|
|
@Override // com.google.android.gms.common.api.internal.LifecycleFragment
|
|
public final Activity getLifecycleActivity() {
|
|
return getActivity();
|
|
}
|
|
|
|
@Override // android.app.Fragment
|
|
public final void onActivityResult(int i, int i2, Intent intent) {
|
|
super.onActivityResult(i, i2, intent);
|
|
Iterator it = this.zzb.values().iterator();
|
|
while (it.hasNext()) {
|
|
((LifecycleCallback) it.next()).onActivityResult(i, i2, intent);
|
|
}
|
|
}
|
|
|
|
@Override // android.app.Fragment
|
|
public final void onCreate(Bundle bundle) {
|
|
super.onCreate(bundle);
|
|
this.zzc = 1;
|
|
this.zzd = bundle;
|
|
for (Map.Entry entry : this.zzb.entrySet()) {
|
|
((LifecycleCallback) entry.getValue()).onCreate(bundle != null ? bundle.getBundle((String) entry.getKey()) : null);
|
|
}
|
|
}
|
|
|
|
@Override // android.app.Fragment
|
|
public final void onDestroy() {
|
|
super.onDestroy();
|
|
this.zzc = 5;
|
|
Iterator it = this.zzb.values().iterator();
|
|
while (it.hasNext()) {
|
|
((LifecycleCallback) it.next()).onDestroy();
|
|
}
|
|
}
|
|
|
|
@Override // android.app.Fragment
|
|
public final void onResume() {
|
|
super.onResume();
|
|
this.zzc = 3;
|
|
Iterator it = this.zzb.values().iterator();
|
|
while (it.hasNext()) {
|
|
((LifecycleCallback) it.next()).onResume();
|
|
}
|
|
}
|
|
|
|
@Override // android.app.Fragment
|
|
public final void onSaveInstanceState(Bundle bundle) {
|
|
super.onSaveInstanceState(bundle);
|
|
if (bundle == null) {
|
|
return;
|
|
}
|
|
for (Map.Entry entry : this.zzb.entrySet()) {
|
|
Bundle bundle2 = new Bundle();
|
|
((LifecycleCallback) entry.getValue()).onSaveInstanceState(bundle2);
|
|
bundle.putBundle((String) entry.getKey(), bundle2);
|
|
}
|
|
}
|
|
|
|
@Override // android.app.Fragment
|
|
public final void onStart() {
|
|
super.onStart();
|
|
this.zzc = 2;
|
|
Iterator it = this.zzb.values().iterator();
|
|
while (it.hasNext()) {
|
|
((LifecycleCallback) it.next()).onStart();
|
|
}
|
|
}
|
|
|
|
@Override // android.app.Fragment
|
|
public final void onStop() {
|
|
super.onStop();
|
|
this.zzc = 4;
|
|
Iterator it = this.zzb.values().iterator();
|
|
while (it.hasNext()) {
|
|
((LifecycleCallback) it.next()).onStop();
|
|
}
|
|
}
|
|
|
|
@Override // com.google.android.gms.common.api.internal.LifecycleFragment
|
|
public final boolean isStarted() {
|
|
return this.zzc >= 2;
|
|
}
|
|
|
|
@Override // com.google.android.gms.common.api.internal.LifecycleFragment
|
|
public final boolean isCreated() {
|
|
return this.zzc > 0;
|
|
}
|
|
}
|