GetOpenSourceSoftwareLicenseInfo devuelve null ahora

Un problema trivial pero molesto ha surgido en los últimos días. Anteriormente mi opción de menú que apareció un cuadro de diálogo para mostrar el texto legal para el uso de los Servicios de Google era muy completo (si un poco lento para cargar), pero ahora es nulo sin cambio en el código.

GoogleApiAvailability apiAvailability = GoogleApiAvailability.getInstance(); int resultCode = apiAvailability.isGooglePlayServicesAvailable(this); if (resultCode == ConnectionResult.SUCCESS) { AlertDialog.Builder builder = new AlertDialog.Builder(MainActivity.this); builder.setTitle("About"); builder.setMessage(apiAvailability.getOpenSourceSoftwareLicenseInfo(this)); builder.setPositiveButton("OK", null); builder.show(); } 

¿Es este un problema común a otros, es decir, un nuevo error introducido por una actualización de Google o alguna otra posibilidad?

De acuerdo con https://code.google.com/p/gmaps-api-issues/issues/detail?id=9813

Parece que google ha cambiado el nombre de archivo que estaba buscando de oss_notice a third_party_licenses . Básicamente se rompió la obtención de la información de licencia para cualquier implementación de servicios de juego debajo de 9.0.0.

Tendrá que actualizar la versión a 9.0.0 para obtener la información de licencia de nuevo para el dispositivo con versiones posteriores de los servicios de reproducción.

EDIT (6 de junio de 2016): Google está estudiando el tema ahora.

Miembro # 3 del proyecto … @ google.com

Gracias por los informes. Hemos presentado esto internamente y lo examinaremos.

Estado: Aceptado Etiquetas: Interno-29143355

Sí, la actualización de Google Play Services a la última versión (9.0.0 al momento de escribir esta respuesta) resuelve el problema.

Tuve el mismo problema y después de actualizar Google Play Services empecé a obtener las licencias correctamente.

Si mantiene una aplicación antigua y no puede actualizar razonablemente desde una versión muy antigua de Google Play Services sin romper una gran cantidad de características antiguas, hay una solución viable:

Descompile el método getOpenSourceSoftwareLicenseInfo () con Android Studio, copie el método en su proyecto y cambie la línea para que apunte desde "oss_notice" a "third_party_licenses".

  Uri var1 = (new android.net.Uri.Builder()).scheme("android.resource").authority("com.google.android.gms").appendPath("raw").appendPath("oss_notice").build(); 

a

  Uri var1 = (new android.net.Uri.Builder()).scheme("android.resource").authority("com.google.android.gms").appendPath("raw").appendPath("third_party_licenses").build(); 
  • Google Play prueba la facturación en la aplicación con la versión beta abierta
  • Google Play Store: necesitas arreglar tu icono de alta resolución. No es una imagen válida
  • Firmar Android APK con un certificado que expira más en el futuro
  • La compra en la aplicación utiliza una cuenta incorrecta después de la actualización
  • Android: ID de producto en la aplicación
  • Cómo admitir enlaces de Amazon y Android Market (Google Play) en el mismo APK
  • Busque el nombre del paquete para que las aplicaciones de Android se utilicen Intent to launch Market app from web
  • Algunos países están inhabilitados en la consola de Google Play para desarrolladores
  • Android Play Store - Error al recuperar información del servidor. RPC: S-2: AEC-2
  • Eclipse Option not available: Herramientas de Android> Exportar paquete de aplicaciones sin firmar
  • Mapa no funciona después de instalar desde la tienda de juegos en android
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.