
org.robolectric.shadows.gms.common.ShadowGoogleApiAvailability Maven / Gradle / Ivy
package org.robolectric.shadows.gms.common;
import android.app.Activity;
import android.app.Dialog;
import android.content.Context;
import android.content.DialogInterface;
import com.google.android.gms.common.ConnectionResult;
import com.google.android.gms.common.GoogleApiAvailability;
import org.robolectric.annotation.Implementation;
import org.robolectric.annotation.Implements;
import org.robolectric.shadow.api.Shadow;
@Implements(GoogleApiAvailability.class)
public class ShadowGoogleApiAvailability {
private int availabilityCode = ConnectionResult.SERVICE_MISSING;
private boolean isUserResolvableError = false;
private String openSourceSoftwareLicenseInfo = "";
private Dialog errorDialog;
@Implementation
public static GoogleApiAvailability getInstance(){
return InstanceHolder.INSTANCE;
}
@Implementation
public int isGooglePlayServicesAvailable(Context context){
return availabilityCode;
}
public void setIsGooglePlayServicesAvailable(int availabilityCode) {
this.availabilityCode = availabilityCode;
}
@Implementation
public final boolean isUserResolvableError(int errorCode) {
return isUserResolvableError;
}
public void setIsUserResolvableError(final boolean isUserResolvableError){
this.isUserResolvableError = isUserResolvableError;
}
@Implementation
public String getOpenSourceSoftwareLicenseInfo(Context context){
return openSourceSoftwareLicenseInfo;
}
public void setOpenSourceSoftwareLicenseInfo(final String openSourceSoftwareLicenseInfo){
this.openSourceSoftwareLicenseInfo = openSourceSoftwareLicenseInfo;
}
@Implementation
public Dialog getErrorDialog(Activity activity, int errorCode, int requestCode) {
return errorDialog;
}
@Implementation
public Dialog getErrorDialog(Activity activity, int errorCode, int requestCode,
DialogInterface.OnCancelListener cancelListener) {
return errorDialog;
}
public void setErrorDialog(final Dialog errorDialog){
this.errorDialog = errorDialog;
}
private static class InstanceHolder {
private static final GoogleApiAvailability INSTANCE = Shadow.newInstance(
GoogleApiAvailability.class, new Class[]{}, new Object[]{});
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy