Android: cómo obtener la imagen del perfil de Google+ y la fotografía de portada en el cajón de navegación
Asumiendo que el usuario está conectado a su cuenta de Google+ por teléfono, ¿Cómo puede obtener la imagen de Google+ (circular) y la portada de Google+ en el cajón de navegación de una aplicación de Android? ¿Hay un API para esto? Además, ¿cómo podemos mostrar la foto de perfil como un círculo? Estoy tratando de lograr la misma interfaz de usuario de la navegación como la aplicación Android INBOX.
- Google Android estilo de botón de inicio de sesión
- Obtener token de acceso para mi aplicación desde GoogleApiClient en Android
- statusCode = DEVELOPER_ERROR en google login
- No se puede encontrar la variable de símbolo GoogleAuthUtil después de actualizar a los servicios de Google Play.
- Google inicia sesión y termina sesión en android con la última API de g-plus
- SHA-1 huella dactilar del certificado keystore
- Plus.PeopleApi.getCurrentPerson devuelve null
- Acceda a google plus client desde múltiples actividades
- Dependencia apache cliente HTTP en android con API de Google
- Google Plus compartir desde la aplicación Android
- La intención de compartir Google+ no puede acceder a la imagen
- La actividad se inició sin un EXTRA_ACCOUNT al usar el uso compartido nativo en SDK de GooglePlus.
- Google api gettoken (Context, String, String) ahora está obsoleto
- Necesitará activar la API de G + en la consola de Google.
https://developers.google.com/+/mobile/android/getting-started#step_1_enable_the_google_api
- Necesitará hacer un cajón de navegación personalizado:
http://www.androidhive.info/2013/11/android-sliding-menu-using-navigation-drawer/
Cómo crear un cajón de navegación personalizado en android
- Deberá inicializar el GoogleApiClient
https://developer.android.com/google/auth/api-client.html
@Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); ...... googleApiClient = new GoogleApiClient.Builder(getActivity()) .addConnectionCallbacks(this) .addOnConnectionFailedListener(this) .addApi(Plus.API) .addScope(Plus.SCOPE_PLUS_LOGIN) .addScope(Plus.SCOPE_PLUS_PROFILE) .build(); } @Override public void onConnected(Bundle bundle) { Plus.PeopleApi.loadVisible(googleApiClient, null).setResultCallback(this); if (Plus.PeopleApi.getCurrentPerson(googleApiClient) != null) { Person person = Plus.PeopleApi.getCurrentPerson(googleApiClient); personNameView.setText(person.getDisplayName()); if (person.hasImage()) { Person.Image image = person.getImage(); new AsyncTask<String, Void, Bitmap>() { @Override protected Bitmap doInBackground(String... params) { try { URL url = new URL(params[0]); InputStream in = url.openStream(); return BitmapFactory.decodeStream(in); } catch (Exception e) { /* TODO log error */ } return null; } @Override protected void onPostExecute(Bitmap bitmap) { personImageView.setImageBitmap(bitmap); } }.execute(image.getUrl()); } }
Todo el ejemplo que puede obtener aquí: http://www.androidhive.info/2014/02/android-login-with-google-plus-account-1/
Para la foto de portada puede hacer
Person.Cover.CoverPhoto cover = person.getCover().getCoverPhoto(); cover.getUrl()
- Imagen del círculo
http://curious-blog.blogspot.com/2014/05/create-circle-bitmap-in-android.html
Cómo hacer un ImageView con esquinas redondeadas?
- Custom ListPreference con entradas dinámicas
- Android: ¿Cómo dividir LinearLayout en dos partes exactamente del mismo tamaño?