package com.google.android.gms.common.internal; import android.accounts.Account; import android.app.PendingIntent; import android.content.ComponentName; import android.content.Context; import android.content.ServiceConnection; import android.os.Bundle; import android.os.DeadObjectException; import android.os.Handler; import android.os.IBinder; import android.os.IInterface; import android.os.Looper; import android.os.Message; import android.os.Parcel; import android.os.RemoteException; import android.text.TextUtils; import android.util.Log; import com.google.android.gms.common.ConnectionResult; import com.google.android.gms.common.Feature; import com.google.android.gms.common.GoogleApiAvailabilityLight; import com.google.android.gms.common.api.Scope; import com.google.android.gms.common.internal.GmsClientSupervisor; import com.google.android.gms.common.internal.IGmsCallbacks; import java.util.ArrayList; import java.util.Collections; import java.util.Set; import java.util.concurrent.atomic.AtomicInteger; /* loaded from: classes.dex */ public abstract class BaseGmsClient { private static final Feature[] v = new Feature[0]; private zzh a; private final Context b; private final GmsClientSupervisor c; private final GoogleApiAvailabilityLight d; final Handler e; private final Object f; private final Object g; private IGmsServiceBroker h; protected ConnectionProgressReportCallbacks i; private T j; private final ArrayList> k; private zze l; private int m; private final BaseConnectionCallbacks n; private final BaseOnConnectionFailedListener o; private final int p; private final String q; private ConnectionResult r; private boolean s; private volatile com.google.android.gms.common.internal.zzb t; protected AtomicInteger u; public interface BaseConnectionCallbacks { void d(Bundle bundle); void i(int i); } public interface BaseOnConnectionFailedListener { void a(ConnectionResult connectionResult); } public interface ConnectionProgressReportCallbacks { void a(ConnectionResult connectionResult); } protected class LegacyClientCallbackAdapter implements ConnectionProgressReportCallbacks { public LegacyClientCallbackAdapter() { } @Override // com.google.android.gms.common.internal.BaseGmsClient.ConnectionProgressReportCallbacks public void a(ConnectionResult connectionResult) { if (connectionResult.isSuccess()) { BaseGmsClient baseGmsClient = BaseGmsClient.this; baseGmsClient.a((IAccountAccessor) null, baseGmsClient.r()); } else if (BaseGmsClient.this.o != null) { BaseGmsClient.this.o.a(connectionResult); } } } public interface SignOutCallbacks { void a(); } private abstract class zza extends zzc { private final int d; private final Bundle e; protected zza(int i, Bundle bundle) { super(true); this.d = i; this.e = bundle; } protected abstract void a(ConnectionResult connectionResult); @Override // com.google.android.gms.common.internal.BaseGmsClient.zzc protected final /* synthetic */ void a(Boolean bool) { if (bool == null) { BaseGmsClient.this.b(1, null); return; } int i = this.d; if (i == 0) { if (e()) { return; } BaseGmsClient.this.b(1, null); a(new ConnectionResult(8, null)); return; } if (i == 10) { BaseGmsClient.this.b(1, null); throw new IllegalStateException(String.format("A fatal developer error has occurred. Class name: %s. Start service action: %s. Service Descriptor: %s. ", getClass().getSimpleName(), BaseGmsClient.this.u(), BaseGmsClient.this.t())); } BaseGmsClient.this.b(1, null); Bundle bundle = this.e; a(new ConnectionResult(this.d, bundle != null ? (PendingIntent) bundle.getParcelable("pendingIntent") : null)); } @Override // com.google.android.gms.common.internal.BaseGmsClient.zzc protected final void c() { } protected abstract boolean e(); } final class zzb extends com.google.android.gms.internal.common.zze { public zzb(Looper looper) { super(looper); } private static void a(Message message) { zzc zzcVar = (zzc) message.obj; zzcVar.c(); zzcVar.b(); } private static boolean b(Message message) { int i = message.what; return i == 2 || i == 1 || i == 7; } @Override // android.os.Handler public final void handleMessage(Message message) { if (BaseGmsClient.this.u.get() != message.arg1) { if (b(message)) { a(message); return; } return; } int i = message.what; if ((i == 1 || i == 7 || i == 4 || i == 5) && !BaseGmsClient.this.d()) { a(message); return; } int i2 = message.what; if (i2 == 4) { BaseGmsClient.this.r = new ConnectionResult(message.arg2); if (BaseGmsClient.this.z() && !BaseGmsClient.this.s) { BaseGmsClient.this.b(3, null); return; } ConnectionResult connectionResult = BaseGmsClient.this.r != null ? BaseGmsClient.this.r : new ConnectionResult(8); BaseGmsClient.this.i.a(connectionResult); BaseGmsClient.this.a(connectionResult); return; } if (i2 == 5) { ConnectionResult connectionResult2 = BaseGmsClient.this.r != null ? BaseGmsClient.this.r : new ConnectionResult(8); BaseGmsClient.this.i.a(connectionResult2); BaseGmsClient.this.a(connectionResult2); return; } if (i2 == 3) { Object obj = message.obj; ConnectionResult connectionResult3 = new ConnectionResult(message.arg2, obj instanceof PendingIntent ? (PendingIntent) obj : null); BaseGmsClient.this.i.a(connectionResult3); BaseGmsClient.this.a(connectionResult3); return; } if (i2 == 6) { BaseGmsClient.this.b(5, null); if (BaseGmsClient.this.n != null) { BaseGmsClient.this.n.i(message.arg2); } BaseGmsClient.this.a(message.arg2); BaseGmsClient.this.a(5, 1, (int) null); return; } if (i2 == 2 && !BaseGmsClient.this.b()) { a(message); return; } if (b(message)) { ((zzc) message.obj).d(); return; } int i3 = message.what; StringBuilder sb = new StringBuilder(45); sb.append("Don't know how to handle message: "); sb.append(i3); Log.wtf("GmsClient", sb.toString(), new Exception()); } } protected abstract class zzc { private TListener a; private boolean b = false; public zzc(TListener tlistener) { this.a = tlistener; } public final void a() { synchronized (this) { this.a = null; } } protected abstract void a(TListener tlistener); public final void b() { a(); synchronized (BaseGmsClient.this.k) { BaseGmsClient.this.k.remove(this); } } protected abstract void c(); public final void d() { TListener tlistener; synchronized (this) { tlistener = this.a; if (this.b) { String valueOf = String.valueOf(this); StringBuilder sb = new StringBuilder(String.valueOf(valueOf).length() + 47); sb.append("Callback proxy "); sb.append(valueOf); sb.append(" being reused. This is not safe."); Log.w("GmsClient", sb.toString()); } } if (tlistener != null) { try { a(tlistener); } catch (RuntimeException e) { c(); throw e; } } else { c(); } synchronized (this) { this.b = true; } b(); } } public final class zze implements ServiceConnection { private final int a; public zze(int i) { this.a = i; } @Override // android.content.ServiceConnection public final void onServiceConnected(ComponentName componentName, final IBinder iBinder) { IGmsServiceBroker iGmsServiceBroker; if (iBinder == null) { BaseGmsClient.this.c(16); return; } synchronized (BaseGmsClient.this.g) { BaseGmsClient baseGmsClient = BaseGmsClient.this; if (iBinder == null) { iGmsServiceBroker = null; } else { IInterface queryLocalInterface = iBinder.queryLocalInterface("com.google.android.gms.common.internal.IGmsServiceBroker"); iGmsServiceBroker = (queryLocalInterface == null || !(queryLocalInterface instanceof IGmsServiceBroker)) ? new IGmsServiceBroker(iBinder) { // from class: com.google.android.gms.common.internal.IGmsServiceBroker$Stub$zza private final IBinder a; { this.a = iBinder; } @Override // com.google.android.gms.common.internal.IGmsServiceBroker public final void a(IGmsCallbacks iGmsCallbacks, GetServiceRequest getServiceRequest) throws RemoteException { Parcel obtain = Parcel.obtain(); Parcel obtain2 = Parcel.obtain(); try { obtain.writeInterfaceToken("com.google.android.gms.common.internal.IGmsServiceBroker"); obtain.writeStrongBinder(iGmsCallbacks != null ? iGmsCallbacks.asBinder() : null); if (getServiceRequest != null) { obtain.writeInt(1); getServiceRequest.writeToParcel(obtain, 0); } else { obtain.writeInt(0); } this.a.transact(46, obtain, obtain2, 0); obtain2.readException(); } finally { obtain2.recycle(); obtain.recycle(); } } @Override // android.os.IInterface public final IBinder asBinder() { return this.a; } } : (IGmsServiceBroker) queryLocalInterface; } baseGmsClient.h = iGmsServiceBroker; } BaseGmsClient.this.a(0, (Bundle) null, this.a); } @Override // android.content.ServiceConnection public final void onServiceDisconnected(ComponentName componentName) { synchronized (BaseGmsClient.this.g) { BaseGmsClient.this.h = null; } Handler handler = BaseGmsClient.this.e; handler.sendMessage(handler.obtainMessage(6, this.a, 1)); } } protected final class zzf extends zza { private final IBinder g; public zzf(int i, IBinder iBinder, Bundle bundle) { super(i, bundle); this.g = iBinder; } @Override // com.google.android.gms.common.internal.BaseGmsClient.zza protected final void a(ConnectionResult connectionResult) { if (BaseGmsClient.this.o != null) { BaseGmsClient.this.o.a(connectionResult); } BaseGmsClient.this.a(connectionResult); } @Override // com.google.android.gms.common.internal.BaseGmsClient.zza protected final boolean e() { try { String interfaceDescriptor = this.g.getInterfaceDescriptor(); if (!BaseGmsClient.this.t().equals(interfaceDescriptor)) { String t = BaseGmsClient.this.t(); StringBuilder sb = new StringBuilder(String.valueOf(t).length() + 34 + String.valueOf(interfaceDescriptor).length()); sb.append("service descriptor mismatch: "); sb.append(t); sb.append(" vs. "); sb.append(interfaceDescriptor); Log.e("GmsClient", sb.toString()); return false; } IInterface a = BaseGmsClient.this.a(this.g); if (a == null || !(BaseGmsClient.this.a(2, 4, (int) a) || BaseGmsClient.this.a(3, 4, (int) a))) { return false; } BaseGmsClient.this.r = null; Bundle n = BaseGmsClient.this.n(); if (BaseGmsClient.this.n == null) { return true; } BaseGmsClient.this.n.d(n); return true; } catch (RemoteException unused) { Log.w("GmsClient", "service probably died"); return false; } } } protected final class zzg extends zza { public zzg(int i, Bundle bundle) { super(i, null); } @Override // com.google.android.gms.common.internal.BaseGmsClient.zza protected final void a(ConnectionResult connectionResult) { BaseGmsClient.this.i.a(connectionResult); BaseGmsClient.this.a(connectionResult); } @Override // com.google.android.gms.common.internal.BaseGmsClient.zza protected final boolean e() { BaseGmsClient.this.i.a(ConnectionResult.RESULT_SUCCESS); return true; } } static { new String[]{"service_esmobile", "service_googleme"}; } /* JADX WARN: Illegal instructions before constructor call */ /* Code decompiled incorrectly, please refer to instructions dump. To view partially-correct code enable 'Show inconsistent code' option in preferences */ protected BaseGmsClient(android.content.Context r10, android.os.Looper r11, int r12, com.google.android.gms.common.internal.BaseGmsClient.BaseConnectionCallbacks r13, com.google.android.gms.common.internal.BaseGmsClient.BaseOnConnectionFailedListener r14, java.lang.String r15) { /* r9 = this; com.google.android.gms.common.internal.GmsClientSupervisor r3 = com.google.android.gms.common.internal.GmsClientSupervisor.a(r10) com.google.android.gms.common.GoogleApiAvailabilityLight r4 = com.google.android.gms.common.GoogleApiAvailabilityLight.a() com.google.android.gms.common.internal.Preconditions.a(r13) r6 = r13 com.google.android.gms.common.internal.BaseGmsClient$BaseConnectionCallbacks r6 = (com.google.android.gms.common.internal.BaseGmsClient.BaseConnectionCallbacks) r6 com.google.android.gms.common.internal.Preconditions.a(r14) r7 = r14 com.google.android.gms.common.internal.BaseGmsClient$BaseOnConnectionFailedListener r7 = (com.google.android.gms.common.internal.BaseGmsClient.BaseOnConnectionFailedListener) r7 r0 = r9 r1 = r10 r2 = r11 r5 = r12 r8 = r15 r0.(r1, r2, r3, r4, r5, r6, r7, r8) return */ throw new UnsupportedOperationException("Method not decompiled: com.google.android.gms.common.internal.BaseGmsClient.(android.content.Context, android.os.Looper, int, com.google.android.gms.common.internal.BaseGmsClient$BaseConnectionCallbacks, com.google.android.gms.common.internal.BaseGmsClient$BaseOnConnectionFailedListener, java.lang.String):void"); } /* JADX INFO: Access modifiers changed from: private */ public final void a(com.google.android.gms.common.internal.zzb zzbVar) { this.t = zzbVar; } /* JADX INFO: Access modifiers changed from: private */ public final void b(int i, T t) { Preconditions.a((i == 4) == (t != null)); synchronized (this.f) { this.m = i; this.j = t; a(i, (int) t); if (i != 1) { if (i == 2 || i == 3) { if (this.l != null && this.a != null) { String c = this.a.c(); String a = this.a.a(); StringBuilder sb = new StringBuilder(String.valueOf(c).length() + 70 + String.valueOf(a).length()); sb.append("Calling connect() while still connected, missing disconnect() for "); sb.append(c); sb.append(" on "); sb.append(a); Log.e("GmsClient", sb.toString()); this.c.a(this.a.c(), this.a.a(), this.a.b(), this.l, x()); this.u.incrementAndGet(); } this.l = new zze(this.u.get()); this.a = (this.m != 3 || q() == null) ? new zzh(v(), u(), false, 129) : new zzh(o().getPackageName(), q(), true, 129); if (!this.c.a(new GmsClientSupervisor.zza(this.a.c(), this.a.a(), this.a.b()), this.l, x())) { String c2 = this.a.c(); String a2 = this.a.a(); StringBuilder sb2 = new StringBuilder(String.valueOf(c2).length() + 34 + String.valueOf(a2).length()); sb2.append("unable to connect to service: "); sb2.append(c2); sb2.append(" on "); sb2.append(a2); Log.e("GmsClient", sb2.toString()); a(16, (Bundle) null, this.u.get()); } } else if (i == 4) { a((BaseGmsClient) t); } } else if (this.l != null) { this.c.a(u(), v(), 129, this.l, x()); this.l = null; } } } /* JADX INFO: Access modifiers changed from: private */ public final void c(int i) { int i2; if (y()) { i2 = 5; this.s = true; } else { i2 = 4; } Handler handler = this.e; handler.sendMessage(handler.obtainMessage(i2, this.u.get(), 16)); } private final String x() { String str = this.q; return str == null ? this.b.getClass().getName() : str; } private final boolean y() { boolean z; synchronized (this.f) { z = this.m == 3; } return z; } /* JADX INFO: Access modifiers changed from: private */ public final boolean z() { if (this.s || TextUtils.isEmpty(t()) || TextUtils.isEmpty(q())) { return false; } try { Class.forName(t()); return true; } catch (ClassNotFoundException unused) { return false; } } protected abstract T a(IBinder iBinder); void a(int i, T t) { } public boolean d() { boolean z; synchronized (this.f) { z = this.m == 2 || this.m == 3; } return z; } public String e() { zzh zzhVar; if (!b() || (zzhVar = this.a) == null) { throw new RuntimeException("Failed to connect when checking package"); } return zzhVar.a(); } public boolean f() { return true; } public int g() { return GoogleApiAvailabilityLight.a; } public final Feature[] h() { com.google.android.gms.common.internal.zzb zzbVar = this.t; if (zzbVar == null) { return null; } return zzbVar.zzda; } public boolean i() { return false; } public void j() { int a = this.d.a(this.b, g()); if (a == 0) { a(new LegacyClientCallbackAdapter()); } else { b(1, null); a(new LegacyClientCallbackAdapter(), a, (PendingIntent) null); } } protected final void k() { if (!b()) { throw new IllegalStateException("Not connected. Call connect() and wait for onConnected() to be called."); } } public Account l() { return null; } public Feature[] m() { return v; } public Bundle n() { return null; } public final Context o() { return this.b; } protected Bundle p() { return new Bundle(); } protected String q() { return null; } protected Set r() { return Collections.EMPTY_SET; } public final T s() throws DeadObjectException { T t; synchronized (this.f) { if (this.m == 5) { throw new DeadObjectException(); } k(); Preconditions.b(this.j != null, "Client is connected but service is null"); t = this.j; } return t; } protected abstract String t(); protected abstract String u(); protected String v() { return "com.google.android.gms"; } public boolean w() { return false; } protected void a(T t) { System.currentTimeMillis(); } public static final class zzd extends IGmsCallbacks.zza { private BaseGmsClient a; private final int b; public zzd(BaseGmsClient baseGmsClient, int i) { this.a = baseGmsClient; this.b = i; } @Override // com.google.android.gms.common.internal.IGmsCallbacks public final void a(int i, IBinder iBinder, Bundle bundle) { Preconditions.a(this.a, "onPostInitComplete can be called only once per call to getRemoteService"); this.a.a(i, iBinder, bundle, this.b); this.a = null; } @Override // com.google.android.gms.common.internal.IGmsCallbacks public final void b(int i, Bundle bundle) { Log.wtf("GmsClient", "received deprecated onAccountValidationComplete callback, ignoring", new Exception()); } @Override // com.google.android.gms.common.internal.IGmsCallbacks public final void a(int i, IBinder iBinder, com.google.android.gms.common.internal.zzb zzbVar) { Preconditions.a(this.a, "onPostInitCompleteWithConnectionInfo can be called only once per call togetRemoteService"); Preconditions.a(zzbVar); this.a.a(zzbVar); a(i, iBinder, zzbVar.zzcz); } } protected void a(int i) { System.currentTimeMillis(); } protected void a(ConnectionResult connectionResult) { connectionResult.getErrorCode(); System.currentTimeMillis(); } protected BaseGmsClient(Context context, Looper looper, GmsClientSupervisor gmsClientSupervisor, GoogleApiAvailabilityLight googleApiAvailabilityLight, int i, BaseConnectionCallbacks baseConnectionCallbacks, BaseOnConnectionFailedListener baseOnConnectionFailedListener, String str) { this.f = new Object(); this.g = new Object(); this.k = new ArrayList<>(); this.m = 1; this.r = null; this.s = false; this.t = null; this.u = new AtomicInteger(0); Preconditions.a(context, "Context must not be null"); this.b = context; Preconditions.a(looper, "Looper must not be null"); Preconditions.a(gmsClientSupervisor, "Supervisor must not be null"); this.c = gmsClientSupervisor; Preconditions.a(googleApiAvailabilityLight, "API availability must not be null"); this.d = googleApiAvailabilityLight; this.e = new zzb(looper); this.p = i; this.n = baseConnectionCallbacks; this.o = baseOnConnectionFailedListener; this.q = str; } /* JADX INFO: Access modifiers changed from: private */ public final boolean a(int i, int i2, T t) { synchronized (this.f) { if (this.m != i) { return false; } b(i2, t); return true; } } public void a(ConnectionProgressReportCallbacks connectionProgressReportCallbacks) { Preconditions.a(connectionProgressReportCallbacks, "Connection progress callbacks cannot be null."); this.i = connectionProgressReportCallbacks; b(2, null); } public void a() { this.u.incrementAndGet(); synchronized (this.k) { int size = this.k.size(); for (int i = 0; i < size; i++) { this.k.get(i).a(); } this.k.clear(); } synchronized (this.g) { this.h = null; } b(1, null); } protected void a(ConnectionProgressReportCallbacks connectionProgressReportCallbacks, int i, PendingIntent pendingIntent) { Preconditions.a(connectionProgressReportCallbacks, "Connection progress callbacks cannot be null."); this.i = connectionProgressReportCallbacks; Handler handler = this.e; handler.sendMessage(handler.obtainMessage(3, this.u.get(), i, pendingIntent)); } protected void a(int i, IBinder iBinder, Bundle bundle, int i2) { Handler handler = this.e; handler.sendMessage(handler.obtainMessage(1, i2, -1, new zzf(i, iBinder, bundle))); } protected final void a(int i, Bundle bundle, int i2) { Handler handler = this.e; handler.sendMessage(handler.obtainMessage(7, i2, -1, new zzg(i, null))); } public void a(IAccountAccessor iAccountAccessor, Set set) { Bundle p = p(); GetServiceRequest getServiceRequest = new GetServiceRequest(this.p); getServiceRequest.zzdh = this.b.getPackageName(); getServiceRequest.zzdk = p; if (set != null) { getServiceRequest.zzdj = (Scope[]) set.toArray(new Scope[set.size()]); } if (i()) { getServiceRequest.zzdl = l() != null ? l() : new Account("<>", "com.google"); if (iAccountAccessor != null) { getServiceRequest.zzdi = iAccountAccessor.asBinder(); } } else if (w()) { getServiceRequest.zzdl = l(); } getServiceRequest.zzdm = v; getServiceRequest.zzdn = m(); try { synchronized (this.g) { if (this.h != null) { this.h.a(new zzd(this, this.u.get()), getServiceRequest); } else { Log.w("GmsClient", "mServiceBroker is null, client disconnected"); } } } catch (DeadObjectException e) { Log.w("GmsClient", "IGmsServiceBroker.getService failed", e); b(1); } catch (RemoteException e2) { e = e2; Log.w("GmsClient", "IGmsServiceBroker.getService failed", e); a(8, (IBinder) null, (Bundle) null, this.u.get()); } catch (SecurityException e3) { throw e3; } catch (RuntimeException e4) { e = e4; Log.w("GmsClient", "IGmsServiceBroker.getService failed", e); a(8, (IBinder) null, (Bundle) null, this.u.get()); } } public boolean b() { boolean z; synchronized (this.f) { z = this.m == 4; } return z; } public void b(int i) { Handler handler = this.e; handler.sendMessage(handler.obtainMessage(6, this.u.get(), i)); } public void a(SignOutCallbacks signOutCallbacks) { signOutCallbacks.a(); } }