2015-10-31 2 views
1

Я новичок в андроиде. Я использую GooglePlaces Api в своем приложении. У меня уже есть ключ и включен сервис GooglePlace.Как правильно построить GooglePlacesApi?

Согласно документации Google, правильный способ построить GooglePlaces

mGoogleApiClient = new GoogleApiClient .Builder(this) .addApi(Places.GEO_DATA_API) .addApi(Places.PLACE_DETECTION_API) .addConnectionCallbacks(this) .addOnConnectionFailedListener(this) .build();

Но ищут примеры кода на других веб-страницах, я нашел:

mGoogleApiClient = new GoogleApiClient.Builder(this) 
     .enableAutoManage(this, 0 /* clientId */, this) 
     .addApi(Places.GEO_DATA_API) 
     .build(); 

Что такое "ClientId" параметр? Как мне это получить? То же, что и у Google OAuth 2.0?

+0

Вы можете использовать Android ReactiveLocation [Android-ReactiveLocation] (https://github.com/ mcharmas/Android-ReactiveLocation) > Небольшая библиотека, которая обертывает API сервисов Google Play в ярком RxJava > Наблюдает за уменьшением шаблона до минимума. –

ответ

0

ДА.

Чтобы создать OAuth клиента 2,0 ID в Google Developers Console, сделайте следующее:

  1. Откройте Credentials страницу.
  2. Нажмите Create new Client ID.
  3. Выберите подходящий тип приложения для своего проекта и введите любую требуемую дополнительную информацию. Если вы впервые создаете идентификатор клиента, помимо возможности выбрать тип своего приложения, вы можете настроить экран согласия, нажав кнопку «Согласие». После того, как вы сделаете это в первый раз, вы не получите приглашение настроить экран согласия.
  4. Нажмите Create Client ID

Чтобы отключить идентификатор клиента, нажмите кнопку Удалить ниже соответствующей таблице на странице Учетные данные.

правок:

Не забыл добавить onStart() и onStop() в коде: -

@Override 
protected void onStart() { 
    super.onStart(); 
    mGoogleApiClient.connect(); 
} 

@Override 
protected void onStop() { 
    super.onStop(); 
    mGoogleApiClient.disconnect(); 
} 
+0

Я получил идентификатор клиента, как это: 1234567891234-bq5ncqm2gckhj8melh7q3deedk38hapi.apps.googleusercontent.com , что является ClientId (интермедиат параметр) в строителе? .enableAutoManage (это,/* clientId * /, this) Первые 13 чисел слишком велики для целочисленного типа. – user3821381

+0

вы можете проверить [с помощью enableAutoManage() в фрагменте] (http://stackoverflow.com/questions/30622906/using-enableautomanage-in-fragment)? – pRaNaY