Skip to content

connectedAndInstalledNodes throws into the outer scope when API is not available #2596

@Nek-12

Description

@Nek-12

Excuse me, but why is the method isAvailable(): Boolean throwing ApiNotAvailable exception?

Non-fatal Exception: com.google.android.gms.common.api.ApiException: 17: API: Wearable.API is not available on this device. Connection failed with: ConnectionResult{statusCode=API_UNAVAILABLE, resolution=null, message=null}
       at com.google.android.gms.common.internal.ApiExceptionUtil.fromStatus(ApiExceptionUtil.java:3)
       at com.google.android.gms.common.internal.zap.onComplete(com.google.android.gms:play-services-base@@18.4.0:4)
       at com.google.android.gms.common.api.internal.BasePendingResult.zab(com.google.android.gms:play-services-base@@18.4.0:7)
       at com.google.android.gms.common.api.internal.BasePendingResult.setResult(com.google.android.gms:play-services-base@@18.4.0:6)
       at com.google.android.gms.common.api.internal.BaseImplementation$ApiMethodImpl.setFailedResult(BaseImplementation.java:5)
       at com.google.android.gms.common.api.internal.zae.zad(com.google.android.gms:play-services-base@@18.4.0:1)
       at com.google.android.gms.common.api.internal.zabq.zaF(com.google.android.gms:play-services-base@@18.4.0:7)
       at com.google.android.gms.common.api.internal.zabq.zaE(com.google.android.gms:play-services-base@@18.4.0:2)
       at com.google.android.gms.common.api.internal.zabq.zar(com.google.android.gms:play-services-base@@18.4.0:23)
       at com.google.android.gms.common.api.internal.zabq.onConnectionFailed(com.google.android.gms:play-services-base@@18.4.0:1)
       at com.google.android.gms.common.internal.zai.onConnectionFailed(zai.java:1)
       at com.google.android.gms.common.internal.zzf.zzb(com.google.android.gms:play-services-basement@@18.5.0:2)
       at com.google.android.gms.common.internal.zza.zza(zza.java:7)
       at com.google.android.gms.common.internal.zzc.zze(zzc.java:3)
       at com.google.android.gms.common.internal.zzb.handleMessage(com.google.android.gms:play-services-basement@@18.5.0:31)
       at android.os.Handler.dispatchMessage(Handler.java:107)
       at android.os.Looper.loop(Looper.java:237)
       at android.os.HandlerThread.run(HandlerThread.java:67)        

The only method of Horologist we haven't wrapped in a try/catch in the entire codebase was isAvailable() and the constructors.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions