¿Por qué Android tiene su propia implementación de URI y no utiliza la implementación de Java por defecto?

Mientras trabajaba con aplicaciones de Android, a menudo he encontrado la conversión entre la clase Uri de Android y la clase URI de Java.

No he entendido por qué Android necesitaba su propia implementación y no usar la clase URI predeterminada que se incluye con Java?

Tal vez sólo he estado arañando la superficie al trabajar con URIs y no lo he descubierto. Gracias.

Javadoc dice

En interés del rendimiento, esta clase realiza poca o ninguna validación. El comportamiento no está definido para la entrada no válida. Esta clase es muy tolerante – ante la entrada inválida, devolverá la basura en lugar de lanzar una excepción a menos que se especifique lo contrario.

Eso es definitivamente diferente del JDK. ¿Tal vez por eso?

  • Utilizar el constructor URI en Android o crear URL con variables
  • Obtener el número de teléfono de la URI de búsqueda
  • ¿Cómo obtener el tono de llamada actual en Android?
  • El atributo pathPrefix de Deeplink de Android se está omitiendo
  • UriMatcher no coincidirá con uri
  • Agregar calendario y eventos en Android 2.2
  • Una respuesta final sobre cómo obtener datos Exif de URI
  • Android: Obtener un archivo URI de un URI de contenido?
  • Abrir en la intención del navegador cuando el enlace también redirecciona con deep-linking
  • Android: vinculación de aplicaciones - sólo admite ciertos caminos?
  • Actividad de captura de cámara Android devuelve null Uri
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.