Deprecated Plus.PeopleApi.load

Ahora que Plus.API está obsoleto en Google Play Services 9.4 , ¿cuál es la forma correcta de obtener círculos de Google Plus para usuarios autenticados en la aplicación de Android?

Ahora tenemos el método obsoleto de carga más los usuarios Plus.PeopleApi.load

Nueva documentación dice:

Si tu aplicación necesita información social y datos de perfil más extensos, consulta el proveedor de contactos de Android o la API People de varias plataformas.

Así que debería ir con el proveedor de contactos de Android que parece ser una alternativa difícil (porque tengo que filtrar contactos con cursores y también gestionar permisos de tiempo de ejecución).

Cualquier alternativa fácil de método anterior obsoleto para obtener sólo Lista de círculos de G + para el usuario?

La API de personas de Google+ finalmente quedará completamente obsoleta 2017 Q1, vea las notas de depreciación más abajo para más detalles:

Anuncio de Android: https://developers.google.com/+/mobile/android/api-deprecation

Anuncio del punto final REST: https://developers.google.com/+/web/people/#retrieve-a-collection-of-people

Por lo tanto, debe considerar alternativas sugeridas y no crear nuevas características basadas en amigos de G + Circle, ya que no habrá datos disponibles para los nuevos usuarios con el ámbito plus.login .

Si no desea solicitar permisos de tiempo de ejecución, aún puede obtener los contactos del usuario que haya iniciado sesión en la API de People REST (Tenga en cuenta que esto es algo diferente de la API de G + People). Además, si necesita información de perfil de usuario que no sea el nombre de usuario, la dirección de correo electrónico y la imagen de perfil (que ya está incluida en la API de inicio de sesión), debe utilizar la misma nueva API de personas.

En Android, cuando necesite los datos de los contactos ( En contexto, explicando al usuario por qué está solicitando su información de contactos NO solicite el alcance de los contactos por adelantado en su actividad de inicio de sesión )

 // Add dependencies (SDKs will be downloaded from mavenCentral) compile 'com.google.api-client:google-api-client:1.22.0' compile 'com.google.api-client:google-api-client-android:1.22.0' compile 'com.google.apis:google-api-services-people:v1-rev4-1.22.0' 

A continuación, escriba el código de inicio de sesión.

 // Make sure your GoogleSignInOptions request email & contacts scopes as shown below GoogleSignInOptions gso = new GoogleSignInOptions.Builder(GoogleSignInOptions.DEFAULT_SIGN_IN) .requestEmail() .requestScopes(new Scope(PeopleScopes.CONTACTS_READONLY))) .build(); // Follow official doc to sign-in. // https://developers.google.com/identity/sign-in/android/sign-in 

A continuación, puede utilizar el nuevo People Api para recuperar la lista de contactos.

 /** Global instance of the HTTP transport. */ private static HttpTransport HTTP_TRANSPORT = AndroidHttp.newCompatibleTransport(); /** Global instance of the JSON factory. */ private static final JsonFactory JSON_FACTORY = JacksonFactory.getDefaultInstance(); // On worker thread GoogleAccountCredential credential = GoogleAccountCredential.usingOAuth2(MainActivity.this, PeopleScopes.CONTACTS_READONLY); credential.setSelectedAccount( new Account(googleSignInAccount.getEmail(), "com.google")); People service = new People.Builder(HTTP_TRANSPORT, JSON_FACTORY, credential) .setApplicationName(APPLICATION_NAME /* whatever you like */) .build(); ListConnectionsResponse response = service.people().connections() .list("people/me") // request 20 contacts .setPageSize(20) .execute(); List<Person> connections = response.getConnections(); if (connections != null && connections.size() > 0) { for (Person person : connections) { List<Name> names = person.getNames(); if (names != null && names.size() > 0) { Log.i(TAG, "Name: " + person.getNames().get(0).getDisplayName()); } else { Log.i(TAG, "No names available for connection."); } List<Gender> genders = person.getGenders(); String ageRange = person.getAgeRange(); List<Birthday> birthdays = person.getBirthdays(); ... } } 
  • Android: ¿Cómo obtener un token de actualización mediante Google Sign-In API?
  • No se puede obtener un cumpleaños privado de la cuenta de Google Plus aunque se solicita explícitamente
  • ¿Cómo volver a autenticar un usuario en Firebase con Google Provider?
  • Cómo configurar el texto del cuadro de diálogo de google api en el idioma predeterminado de la aplicación
  • Cómo obtener el botón predeterminado de Google+ en la aplicación de Android
  • La ejecución falló para la tarea ': app: transformClassesWithDexForDebug' al implementar Google inicie sesión en Android
  • AWS Cognito: se ocupa del tiempo de expiración del token
  • No se puede encontrar la variable de símbolo GoogleAuthUtil después de actualizar a los servicios de Google Play.
  • ¿Cómo obtener el token de acceso con el nuevo inicio de sesión de Google con los servicios de juego 8.3?
  • Goole Firme para iOS o Android con acceso sin conexión, el servidor siempre obtiene redirect_uri_mismatch
  • Cómo autenticar Google Android con el servidor Node
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.