2017-01-15 2 views
0

У меня возникла проблема, когда при запуске прямо на моем мобильном устройстве приложение запускается успешно, но когда я пытаюсь запустить его на эмуляторе, он сработает, прежде чем он начнет с ошибки:GoogleApiAvailability.getErrorDialog (android.app.Activity, int, int)

01-15 14:30:35.037 3735-3735/com.example.glen.countryinformationapp E/AndroidRuntime: FATAL EXCEPTION: main 
Process: com.example.glen.countryinformationapp, PID: 3735 
java.lang.NullPointerException: Attempt to invoke virtual method 'android.app.Dialog com.google.android.gms.common.GoogleApiAvailability.getErrorDialog(android.app.Activity, int, int)' on a null object reference 
at com.example.glen.countryinformationapp.MainActivity.onConnectionFailed(MainActivity.java:216) 
at com.google.android.gms.common.internal.zzm.zzo(Unknown Source) 
at com.google.android.gms.internal.zzaal.zzc(Unknown Source) 
at com.google.android.gms.internal.zzaaj.zzf(Unknown Source) 
at com.google.android.gms.internal.zzaaj.zza(Unknown Source) 
at com.google.android.gms.internal.zzaaj$zzb$1.zzvA(Unknown Source) 
at com.google.android.gms.internal.zzaan$zza.zzc(Unknown Source) 
at com.google.android.gms.internal.zzaan$zzb.handleMessage(Unknown Source) 
at android.os.Handler.dispatchMessage(Handler.java:102) 
at android.os.Looper.loop(Looper.java:148) 
at android.app.ActivityThread.main(ActivityThread.java:5417) 
at java.lang.reflect.Method.invoke(Native Method) 
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726) 
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616) 

Я использую Google Plus API логин, который только дает вопросы на эмуляторе:/любые мысли?

+1

Вы должны добавить часть вашего кода, где вам используйте getErrorDialog (...). –

ответ

0

вам нужно проверить, если сервис Google API доступен в вашем эмуляторе ..

public boolean isGooglePlayServicesAvailable(Activity activity) { 
    GoogleApiAvailability googleApiAvailability = GoogleApiAvailability.getInstance(); 
    int status = googleApiAvailability.isGooglePlayServicesAvailable(activity); 
    if(status != ConnectionResult.SUCCESS) { 
     if(googleApiAvailability.isUserResolvableError(status)) { 
       googleApiAvailability.getErrorDialog(activity, status, 1000).show(); 
     } 
     return false; 
    } 
    return true; 
} 

, если нет в наличии, то вы можете показать, что dialogthe device is not supported for required Google Play Services

Смежные вопросы