2016-05-09 2 views
0

Это сводит меня с ума от того, как важную документацию часто упускают из вида в документах google. Я бы вырвал волосы, если бы не был уже лысым.Проверка на сервисы google play

private void checkGooglePlayServices() { 
    int errorCode = GoogleApiAvailability.getInstance().isGooglePlayServicesAvailable(this); 
    boolean isErrorResolvable = GoogleApiAvailability.getInstance().isUserResolvableError(errorCode); 

    if (isErrorResolvable) { 
    GoogleApiAvailability.getInstance().getErrorDialog(this, errorCode, REQUEST_CODE_GOOGLE_PLAY_SERVICES).show(); 
    } else { 
    if (errorCode == ConnectionResult.SUCCESS) { 
     launchApplication(); 
    } 
    } 
} 

Приведенный выше код отображает диалоговое окно, в котором говорится, есть кнопка для чтения Установить Google игровые услуги:

@Override 
protected void onActivityResult(int requestCode, int resultCode, Intent data) { 
    super.onActivityResult(requestCode, resultCode, data); 
    if (requestCode == REQUEST_CODE_GOOGLE_PLAY_SERVICES) { 

    } 
} 

теперь, что я должен делать здесь? Как я должен направить пользователя в магазин воспроизведения, чтобы получить обновление для сервисов? Я считаю, что getErrorResolutionPendingIntent будет полезен, но я не уверен, как это сделать.

, пожалуйста, помогите мне.

ответ

2

Вы можете использовать этот код, чтобы открыть Google Play Service страницу в App Store:

try { 
    startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse("market://details?id=" + GoogleApiAvailability.GOOGLE_PLAY_SERVICES_PACKAGE))); 
} catch (android.content.ActivityNotFoundException anfe) { 
    startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse("https://play.google.com/store/apps/details?id=" + GoogleApiAvailability.GOOGLE_PLAY_SERVICES_PACKAGE))); 
} 
+0

Спасибо. Это то, что беспокоило меня. –

3

Вы можете проверить Google Play Service с этим:

if (checkPlayServices()) { 
    // Do your calculation here. 
} 

private boolean checkPlayServices() { 
    GoogleApiAvailability apiAvailability = GoogleApiAvailability.getInstance(); 
    int resultCode = apiAvailability.isGooglePlayServicesAvailable(this); 
    if (resultCode != ConnectionResult.SUCCESS) { 
     if (apiAvailability.isUserResolvableError(resultCode)) { 
      apiAvailability.getErrorDialog(this, resultCode, PLAY_SERVICES_RESOLUTION_REQUEST) 
        .show(); 
     } else { 
      Log.i(TAG, "This device is not supported."); 
      finish(); 
     } 
     return false; 
    } 
    return true; 
} 

Это поможет вам проверить Google Play Обслуживание.

+0

Спасибо. Примите ответ, если это полезно. – Dhruv

+0

Это не касается моей проблемы. Я тоже достиг того, что вы предложили выше. Я не знаю, как открыть игровой магазин на соответствующей странице для сервисов Google Play. Прямо сейчас, когда я нажимаю «Get go play play services», он просто вызывает мой onactivityresult –

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