Skip to content

Most visited

Recently visited

navigation

ICU4J API del framework de Android

ICU4J es un conjunto de bibliotecas de Java de código abierto y amplio uso que brinda compatibilidad con Unicode y globalización para aplicaciones de software. A partir de Android 7.0 (nivel de API 24), Android expone un subconjunto de ICU4J API para que los desarrolladores de apps las usen en el paquete android.icu. Estas API usan datos de ubicación presentes en el dispositivo. Como resultado, puedes reducir la superficie de APK evitando la compilación de las bibliotecas de ICU4J en el APK. En lugar de esto, puedes simplemente llamarlas en el framework. (En este caso, posiblemente debas brindar varias versiones de tu APK, de modo que los usuarios que usan versiones de Android inferiores a Android 7.0 [nivel de API 24] puedan descargar una versión de la app que incluya las bibliotecas de ICU4J).

Al principio de este documento, encontrarás información básica sobre los niveles de Android API mínimos necesarios para admitir estas bibliotecas. Más adelante, encontrarás explicaciones sobre lo que debes saber acerca de la implementación de ICU4J específica para Android. Por último, encontrarás explicaciones sobre la manera de usar las ICU4J API en el framework de Android.

Relación con ICU4J

Android expone un subconjunto de las ICU4J API a través del paquete android.icu, en lugar de com.ibm.icu. El framework de Android puede elegir no exponer las ICU4J API por varias razones; por ejemplo, Android no expone algunas API obsoletas ni aquellas que el equipo de ICU aún no ha declarado como estables. A medida que el equipo de ICU deje de usar API en el futuro, en Android también se marcarán como obsoletas, pero se seguirán incluyendo.

Tabla 1: Versiones de ICU y CLDR usadas en Android.

Nivel de Android API Versión de ICU Versión de CLDR
Android 7.0 (nivel de API 24) 56 28

Debes tener en cuenta lo siguiente:

Migración hacia el paquete android.icu desde com.ibm.icu

Si ya usas las ICU4J API en tu app y las android.icu API cumplen con tus requisitos, la migración hacia las API del framework implicará que cambies tus importaciones de Java de com.ibm.icu a android.icu. Luego, puedes quitar tu propia copia de los archivos de ICU4J del APK.

Nota: Las API del framework de ICU4J usan el espacio de nombres android.icu en lugar de com.ibm.icu. El propósito de esto es evitar conflictos de espacio de nombres en APK que contengan sus propias bibliotecas de com.ibm.icu.

Migración hacia las android.icu API desde otras Android SDK API

Algunas clases de los paquetes de java y android son equivalentes a las clases de ICU4J. Sin embargo, ICU4J a menudo brinda una compatibilidad más amplia para estándares e idiomas.

A continuación, se ofrecen algunos ejemplos para comenzar:

Clase Alternativas
java.lang.Character android.icu.lang.UCharacter
java.text.BreakIterator android.icu.text.BreakIterator
java.text.DecimalFormat android.icu.text.DecimalFormat
java.util.Calendar android.icu.util.Calendar
android.text.BidiFormatter android.icu.text.Bidi
android.text.format.DateFormat android.icu.text.DateFormat
android.text.format.DateUtils android.icu.text.DateFormat android.icu.text.RelativeDateTimeFormatter

Licencias

ICU4J se publica con licencia de ICU. Para obtener información detallada, consulta la Guía del usuario de ICU.

This site uses cookies to store your preferences for site-specific language and display options.

Hooray!

This class requires API level or higher

This doc is hidden because your selected API level for the documentation is . You can change the documentation API level with the selector above the left navigation.

For more information about specifying the API level your app requires, read Supporting Different Platform Versions.

Take a one-minute survey?
Help us improve Android tools and documentation.