Skip to content

Most visited

Recently visited

navigation

Agregar gráficos vectoriales de varias densidades

Android Studio incluye una herramienta llamada Vector Asset Studio que permite agregar íconos de material e importar archivos de gráficos vectoriales redimensionables (SVG) y Adobe Photoshop Document (PSD) a tu proyecto como recursos de elementos de diseño vectoriales. El uso de elementos de diseño vectoriales en lugar de mapas de bits reduce el tamaño de tu APK porque se puede cambiar el tamaño del mismo archivo para diferentes densidades de pantalla sin perder la calidad de imagen. Para versiones anteriores de Android que no admiten elementos de diseño vectoriales, Vector Asset Studio puede, durante el tiempo de compilación, diversificar los tamaños de tus elementos de diseño vectoriales de mapa de bits para cada densidad de pantalla.

Acerca de Vector Asset Studio

Vector Asset Studio agrega un gráfico vectorial al proyecto como un archivo XML que describe la imagen. Mantener un archivo XML puede ser más sencillo que actualizar varios gráficos de trama en varias resoluciones.

Android 4.4 (nivel de API 20) y las versiones anteriores no admiten elementos de diseño vectoriales. Si tu nivel mínimo de API se fija en uno de estos valores, tienes dos opciones al usar Vector Asset Studio: generar archivos de Portable Network Graphic (PNG) (predeterminada) o usar la biblioteca de compatibilidad.

Para ofrecer compatibilidad con versiones anteriores, Vector Asset Studio genera imágenes de trama del elemento de diseño vectorial. Los elementos de diseño de trama y vectoriales se empaquetan juntos en el APK. Puedes hacer referencia a los elementos de diseño vectoriales como Drawable en código Java o @drawable en código XML; cuando se ejecuta tu app, se muestra la imagen de trama o vectorial correspondiente de manera automática según el nivel de API.

Si deseas usar solo los elementos de diseño vectoriales, puedes usar la biblioteca de compatibilidad de Android 23.2 o versiones posteriores. Esta técnica requiere un cambio en tu archivo build.gradle antes de ejecutar Vector Asset Studio, como se describe en Compatibilidad con versiones anteriores de la biblioteca de compatibilidad. La clase VectorDrawableCompat de la biblioteca de compatibilidad te permite admitir VectorDrawable en Android 2.1 (nivel de API 7) y versiones posteriores.

Tipos de gráficos vectoriales compatibles

La especificación de material design de Google proporciona íconos de material que puedes usar en tus Android apps. Vector Asset Studio te ayuda a elegir, importar y determinar el tamaño de los íconos de material, así como también definir la opacidad y la configuración de la duplicación de derecha a izquierda (RTL).

Vector Asset Studio también te permite importar tus propios archivos SVG y PSD. SVG es un estándar abierto que se basa en XML del World Wide Web Consortium (W3C). El formato de archivo PSD admite las funciones de Adobe Photoshop. Vector Asset Studio admite los estándares esenciales, pero no todas las funciones de SVG y PSD. Cuando especificas un archivo SVG o PSD, Vector Asset Studio ofrece los comentarios inmediatos sobre si el código de gráficos es compatible o no. Convierte el archivo en uno XML que contiene el código VectorDrawable. Si recibes errores, debes verificar que tu elemento de diseño vectorial aparezca según lo que se pretenda. Para obtener más información sobre las funciones de PSD permitidas, consulta Compatibilidad y restricciones para archivos PSD.

Para Android 5.0 (nivel de API 21) y versiones posteriores, puedes usar la clase AnimatedVectorDrawable a fin de animar las propiedades de la clase VectorDrawable. Con la biblioteca de compatibilidad, puedes usar la clase AnimatedVectorDrawableCompat a fin de animar la clase VectorDrawable para Android 3.0 (nivel de API 11) y versiones posteriores. Para obtener más información, consulta Animar elementos de diseño vectoriales.

Consideraciones para archivos SVG y PSD

Un elemento de diseño vectorial es apropiado para íconos simples. Los íconos de material proporcionan buenos ejemplos de los tipos de imágenes que funcionan bien como elementos de diseño vectoriales en una app. Por el contrario, muchos íconos inicio de apps tienen muchos detalles, de modo que funcionan mejor como imágenes de trama.

La carga inicial de un elemento de diseño vectorial puede requerir más ciclos de CPU que la imagen de trama correspondiente. Luego, el uso de memoria y el rendimiento son similares entre ambos. Te recomendamos limitar una imagen vectorial a un máximo de 200 x 200 dp; de lo contrario, el diseño puede llevar mucho tiempo.

Aunque los elementos de diseño vectoriales admitan uno o más colores, en mucho casos tiene sentido dar color negro a los íconos (android:fillColor="#FF000000"). Aplicando este enfoque, puedes agregar un matiz al elemento de diseño vectorial que dispusiste en un diseño y el color del ícono cambia al color de matiz. Si el color del ícono no es negro, este puede en cambio combinarse con el color de matiz.

Soluciones de compatibilidad con versiones anteriores de elementos de diseño vectoriales

En la siguiente tabla, se resumen las dos técnicas que puedes usar para lograr compatibilidad con versiones anteriores:

Técnica Elementos de diseño en el APK Elementos XML VectorDrawable Versión Marcas de compilación Código de app
Generación de imágenes PNG Vectoriales y de trama Subconjunto compatible

SVG: complemento de Android para Gradle 1.5.0 o posterior

PSD: Android Studio 2.2 o posterior

Valor predeterminado Variedad de técnicas de codificación admitidas
Biblioteca de compatibilidad 23.2 o posterior Vector Compatibilidad completa Complemento de Android para Gradle 2.0 o posterior Se solicitan instrucciones de la biblioteca de compatibilidad. Subconjunto de técnicas de codificación admitidas

El uso de elementos de diseño vectoriales puede producir un APK más pequeño, pero la carga inicial de los elementos de diseño vectoriales puede llevar más tiempo.

Generación de imágenes PNG

Android 5.0 (nivel de API 21) y las versiones posteriores proporcionan compatibilidad con elementos de diseño vectoriales. Si tu app tiene un nivel mínimo de API inferior, Vector Asset Studio agrega el archivo de elemento de diseño vectorial a tu proyecto. Además, durante el tiempo de compilación, Gradle crea imágenes de trama PNG con varias resoluciones. Gradle genera las densidades PNG especificadas por la propiedad generatedDensities del lenguaje específico de dominio (DSL) en un archivo build.gradle.

Para Android 5.0 (nivel de API 21) y versiones posteriores, Vector Asset Studio admite todos los elementos VectorDrawable. Para ofrecer compatibilidad con Android 4.4 (nivel de API 20) y versiones anteriores, Vector Asset Studio admite los siguientes elementos XML:

<vector>

  • android:width
  • android:height
  • android:viewportWidth
  • android:viewportHeight
  • android:alpha

<group>

  • android:rotation
  • android:pivotX
  • android:pivotY
  • android:scaleX
  • android:scaleY
  • android:translateX
  • android:translateY

<path>

  • android:pathData
  • android:fillColor
  • android:strokeColor
  • android:strokeWidth
  • android:strokeAlpha
  • android:fillAlpha
  • android:strokeLineCap
  • android:strokeLineJoin
  • android:strokeMiterLimit

Solo Android 5.0 (nivel de API 21) y las versiones posteriores admiten atributos dinámicos; por ejemplo, android:fillColor="?android:attr/colorControlNormal".

Puedes cambiar el código XML que genera Vector Asset Studio, aunque esto no representa una práctica recomendada. El cambio de valores en el código no debe causar problemas mientras estos sean válidos y estáticos. Si deseas agregar elementos XML, debes asegurarte de que sean compatibles según el nivel mínimo de tu API.

Biblioteca de compatibilidad

Esta técnica exige la biblioteca de compatibilidad de Android 23.2, o versiones posteriores, y un complemento de Android para Gradle 2.0 (o versiones posteriores) y usa solo elementos de diseño vectoriales. La clase VectorDrawableCompat de la biblioteca de compatibilidad te permite admitir VectorDrawable en Android 2.1 (nivel de API 7) y versiones posteriores.

Antes de usar Vector Asset Studio, debes agregar una indicación a tu archivo build.gradle:

android {
  defaultConfig {
    vectorDrawables.useSupportLibrary = true
  }
}

dependencies {
  compile 'com.android.support:appcompat-v7:23.2.0'
}

También debes aplicar técnicas de codificación que admita la biblioteca de compatibilidad, como el uso del atributo app:srcCompat en lugar del atributo android:src para elementos de diseño vectoriales. Para obtener más información, consulta Biblioteca de compatibilidad de Android 23.2.

Ejecución de Vector Asset Studio

Para iniciar Vector Asset Studio:

  1. En Android Studio, abre un proyecto de app de Android.
  2. En la ventana Project, selecciona la vista de Android.
  3. Haz clic con el botón secundario en la carpeta res y selecciona New > Vector Asset.
  4. Algunas otras vistas de proyecto y carpetas también cuentan con este elemento de menú.

    Aparecerá Vector Asset Studio.

    Figura 1: Vector Asset Studio.

  5. Si en su lugar aparece un diálogo Need Newer Android Plugin for Gradle (se necesita un complemento de Android más nuevo para Gradle), corrige tu versión de Gradle de la siguiente manera:
    1. Selecciona File > Project Structure.
    2. En el diálogo Project Structure, selecciona Project.
    3. En el campo Android Plugin Version, cambia el complemento de Android para la versión de Gradle a 1.5.0 o una versión posterior y haz clic en OK.
    4. Gradle sincronizará el proyecto.

    5. En la vista de Android de la ventana Project, haz clic con el botón secundario en la carpeta res y selecciona New > Vector Asset.
    6. Aparecerá Vector Asset Studio.

  6. Continúa con importación de un gráfico vectorial.

Importación de un gráfico vectorial

Vector Asset Studio te ayuda a importar un archivo de gráficos vectoriales al proyecto de tu app. Realiza uno de los siguientes procedimientos:

Agregar un ícono de material

Después de abrir Vector Asset Studio, puedes agregar un ícono de material de la siguiente manera:

  1. En Vector Asset Studio, selecciona Material Icon.
  2. En el campo Icon, haz clic en el botón.
  3. En el diálogo Select Icon, selecciona un ícono de material y haz clic en OK.
  4. El ícono aparecerá en la vista previa del elemento de diseño vectorial.

  5. Como opción, puedes cambiar la configuración de nombre, tamaño, opacidad y duplicación de derecha a izquierda (RTL) del recurso:
    • Name: escribe un nombre nuevo si no deseas usar el predeterminado. Vector Asset Studio crea automáticamente un nombre único (agrega un número al final del nombre) si ese nombre de recurso ya existe en el proyecto. El nombre solo puede contener caracteres en minúscula, guión bajo y números.
    • Override: selecciona esta opción si deseas ajustar el tamaño de la imagen. Cuando escribes un tamaño nuevo, el cambio aparece en el área de vista previa.
    • El valor predeterminado es 24 x 24 dp, que se define en la especificación de material design. Deselecciona la casilla de verificación para volver al valor predeterminado.

    • Opacity: usa el control deslizante para ajustar la opacidad de la imagen. El cambio aparece en el área de vista previa.
    • Enable auto mirroring for RTL layout: selecciona esta opción si deseas mostrar una imagen duplicada cuando el diseño sea de derecha a izquierda, en lugar de izquierda a derecha. Por ejemplo, algunos lenguajes se leen de derecha a izquierda; si tienes un ícono de flecha, tal vez desees mostrar una imagen duplicada de este en este caso. Ten en cuenta que si trabajas con un proyecto anterior, es posible que también debas agregar android:supportsRtl="true" al manifiesto de tu app. La duplicación automática es compatible con Android 5.0 (nivel de API 21) y versiones posteriores, y con la biblioteca de compatibilidad.
  6. Haz clic en Next.
  7. Como opción, puedes cambiar el módulo y el directorio de recursos:
    • Res Directory: selecciona el conjunto de orígenes de recursos donde desees agregar el elemento de diseño vectorial (src/main/res, src/debug/res, src/release/res) o un conjunto de orígenes definido por el usuario. El conjunto de orígenes principal se aplica a todas las variantes de compilación, incluso la depuración y el lanzamiento. Los conjuntos de orígenes de depuración y lanzamiento anulan el conjunto de orígenes principales y se aplican a una versión de una compilación. El conjunto de orígenes de depuración solo se emplea para depuración. Para definir un conjunto nuevo de orígenes, selecciona File > Project Structure > app > Build Types. Por ejemplo, puedes definir un conjunto de orígenes beta y crear una versión de un ícono que incluye el texto “BETA” en la esquina inferior derecha. Para obtener más información, consulta Configurar variantes de compilación.

    En el área de Directorios de salida se muestran el elemento de diseño vectorial y el directorio en el que aparecerá.

  8. Haz clic en Finish.
  9. Vector Asset Studio agrega un archivo XML que define el elemento de diseño vectorial para el proyecto en la carpeta app/src/main/res/drawable/. Desde la vista de Android de la ventana Project, puedes ver el archivo XML vectorial generado en la carpeta drawable.

  10. Compila el proyecto.
  11. Si el nivel mínimo de API corresponde a Android 4.4 (nivel de API 20) o una versión inferior y no has habilitado la técnica de la biblioteca de compatibilidad, Vector Asset Studio genera archivos PNG. En la vista de archivos del proyecto de la ventana Project, puedes ver los archivos PNG y XML generados en la carpeta app/build/generated/res/pngs/debug/.

    No debes editar archivos de trama. En lugar de esto, debes trabajar con el archivo XML vectorial. El sistema de compilación regenera los archivos de trama automáticamente cuando es necesario. Por ello, no es necesario que los mantengas.

importar un archivo SVG o PSD.

Después de abrir Vector Asset Studio, puedes importar un archivo SVG o PSD de la siguiente manera:

  1. En Vector Asset Studio, selecciona Local file.
  2. El archivo debe estar en una unidad local. Si se ubica en la red, por ejemplo, debes descargarlo primero en una unidad local.

  3. Especifica un archivo de imagen haciendo clic en .
  4. La imagen aparece en la vista previa del elemento de diseño vectorial.

    Si el archivo SVG o PSD contiene funciones que no son compatibles, aparece un error en la parte inferior de Vector Asset Studio, en la figura 2.

    Figura 2: visualización de algunos errores en Vector Asset Studio.

    Si ves errores, debes asegurarte de que el elemento de diseño vectorial importado se represente de manera apropiada. Desplázate en la lista para ver los errores.

    Para obtener una lista de elementos compatibles, consulta Soluciones de compatibilidad con versiones anteriores de elementos de diseño vectoriales. Para obtener más información sobre los archivos de PSD permitidos, consulta Compatibilidad y restricciones para archivos PSD.

  5. Como opción, puedes cambiar la configuración de nombre, tamaño, opacidad y duplicación de derecha a izquierda (RTL) del recurso:
    • Name: escribe un nombre nuevo si no deseas usar el predeterminado. Vector Asset Studio crea automáticamente un nombre único (agrega un número al final del nombre) si ese nombre de recurso ya existe en el proyecto. El nombre solo puede contener caracteres en minúscula, guión bajo y números.
    • Override: selecciona esta opción si deseas ajustar el tamaño de la imagen. Después de seleccionarla, el tamaño pasa a ser el de la imagen. Cada vez que se modifica el tamaño, el cambio aparece en el área de la vista previa. El valor predeterminado es 24 x 24 dp, que se define en la especificación de material design.
    • Opacity: usa el control deslizante para ajustar la opacidad de la imagen. El cambio aparece en el área de vista previa.
    • Enable auto mirroring for RTL layout: selecciona esta opción si deseas mostrar una imagen duplicada cuando el diseño sea de derecha a izquierda, en lugar de izquierda a derecha. Por ejemplo, algunos lenguajes se leen de derecha a izquierda; si tienes un ícono de flecha, tal vez desees mostrar una imagen duplicada de este en este caso. Ten en cuenta que si trabajas con un proyecto anterior, es posible que también debas agregar android:supportsRtl="true" al manifiesto de tu app. La duplicación automática es compatible con Android 5.0 (nivel de API 21) y versiones posteriores, y con la biblioteca de compatibilidad.
  6. Haz clic en Next.
  7. Como opción, puedes cambiar el directorio de recursos:
    • Res Directory: selecciona el conjunto de orígenes de recursos donde desees agregar el elemento de diseño vectorial (src/main/res, src/debug/res, src/release/res) o un conjunto de orígenes definido por el usuario. El conjunto de orígenes principal se aplica a todas las variantes de compilación, incluso la depuración y el lanzamiento. Los conjuntos de orígenes de depuración y lanzamiento anulan el conjunto de orígenes principales y se aplican a una versión de una compilación. El conjunto de orígenes de depuración solo se emplea para depuración. Para definir un conjunto nuevo de orígenes, selecciona File > Project Structure > app > Build Types. Por ejemplo, puedes definir un conjunto de orígenes beta y crear una versión de un ícono que incluye el texto “BETA” en la esquina inferior derecha. Para obtener más información, consulta Configurar variantes de compilación.

    En el área de Directorios de salida se muestran el elemento de diseño vectorial y el directorio en el que aparecerá.

  8. Haz clic en Finish.
  9. Vector Asset Studio agrega un archivo XML que define el elemento de diseño vectorial para el proyecto en la carpeta app/src/main/res/drawable/. Desde la vista de Android de la ventana Project, puedes ver el archivo XML vectorial generado en la carpeta drawable.

  10. Compila el proyecto.
  11. Si el nivel mínimo de API corresponde a Android 4.4 (nivel de API 20) o una versión inferior y no has habilitado la técnica de la biblioteca de compatibilidad, Vector Asset Studio genera archivos PNG. En la vista de archivos del proyecto de la ventana Project, puedes ver los archivos PNG y XML generados en la carpeta app/build/generated/res/pngs/debug/.

    No debes editar archivos de trama. En lugar de esto, debes trabajar con el archivo XML vectorial. El sistema de compilación regenera los archivos de trama automáticamente cuando es necesario. Por ello, no es necesario que los mantengas.

Adición de un elemento de diseño vectorial a un diseño

En un archivo de diseño, puedes configurar cualquier widget relacionado con el ícono, como ImageButton y ImageView, entre otros, para señalar un elemento de diseño vectorial. Por ejemplo, en el siguiente diseño se muestra un elemento de diseño vectorial que se muestra en un botón:

Figura 3: Elemento de diseño vectorial que se muestra en un botón de un diseño.

Para mostrar un elemento de diseño vectorial en un widget, como en la figura:

  1. Abre un proyecto e importa un elemento de diseño vectorial.
  2. En este ejemplo se usa un proyecto para tablet o teléfono generado con el nuevo asistente de proyectos.

  3. En la vista de Android de la ventana Project, haz doble clic en un archivo XML de diseño, como content_main.xml.
  4. Haz clic en la pestaña Design para mostrar el editor de diseño.
  5. Arrastra el widget ImageButton de la ventana Palette al editor de diseño.
  6. En el diálogo Resources, selecciona Drawable en el subpanel izquierdo y luego el elemento de diseño vectorial que importaste. Haz clic en OK.
  7. El elemento de diseño vectorial aparece en el ImageButton del diseño.

  8. Para cambiar el color de la imagen al color de énfasis definido en el tema, en la ventana Properties ubica la propiedad tint y haz clic en .
  9. En el diálogo Resources, selecciona Color en el subpanel izquierdo y luego colorAccent. Haz clic en OK.
  10. El color de la imagen cambiará al color de énfasis del diseño.

Si en el proyecto se usa la biblioteca de compatibilidad, el código ImageButton debe asemejarse a lo siguiente:

<ImageButton
  android:layout_width="wrap_content"
  android:layout_height="wrap_content"
  app:srcCompat="@drawable/ic_build_black_24dp"
  tools:layout_editor_absoluteX="11dp"
  tools:layout_editor_absoluteY="225dp"
  android:id="@+id/imageButton"
  android:tint="@color/colorAccent" />

Si en el proyecto no se usa la biblioteca de compatibilidad, el código del elemento de diseño vectorial, en su lugar, será android:src="@drawable/ic_build_black_24dp".

Referencia a un elemento de diseño vectorial en el código

Normalmente, puedes hacer referencia a un recurso de elemento de diseño vectorial de manera genérica en tu código y, cuando se ejecuta tu app, se muestra automáticamente la imagen vectorial o de trama correspondiente según el nivel de API:

Solo puedes acceder a los recursos de elementos de diseño vectoriales desde el subproceso principal.

Para la técnica de biblioteca de compatibilidad, debes usar técnicas de codificación que sean compatibles con la biblioteca de compatibilidad. Para obtener más información, consulta Biblioteca de compatibilidad de Android 23.2.

Modificación del código XML generado por Vector Asset Studio

Puedes modificar el código XML del elemento de diseño vectorial, y esto no es posible con los PNG y el código XML correspondiente generado durante el tiempo de compilación. Sin embargo, no lo recomendamos.

Cuando se usa la técnica de generación de PNG, Vector Asset Studio verifica que el elemento de diseño vectorial y los PNG coincidan, y que el manifiesto contenga el código correspondiente. Si agregas un código que no es compatible con Android 4.4 (nivel de API 20) y versiones anteriores, tus imágenes vectoriales y PNG pueden diferir. También debes asegurarte de que el manifiesto contenga el código para admitir tus cambios.

Para modificar el archivo XML vectorial cuando no uses la técnica de la biblioteca de compatibilidad:

  1. En la ventana Project, haz doble clic en el archivo XML vectorial generado en la carpeta del elemento de diseño.
  2. El archivo XML aparecerá en el editor y en la ventana Preview.

    Figura 4: Se muestra un archivo XML vectorial en el editor de código y en la ventana Preview.

  3. Edita el código XML según lo que admita el nivel mínimo de API:
  4. Compila el proyecto y comprueba que el elemento de diseño vectorial y las imágenes de trama correspondientes tengan el mismo aspecto.
  5. Recuerda que los PNG generados se pueden mostrar de manera diferente en la ventana Preview respecto de la app debido a los diferentes motores de representación y a los cambios realizados en el elemento de diseño vectorial antes de una compilación. Si agregas código al archivo XML vectorial creado por Vector Asset Studio, las funciones que no son compatibles con Android 4.4 (nivel de API 20) o versiones anteriores no aparecen en los archivos PNG generados. Como resultado, cuando agregas un código, siempre debes comprobar que los PNG generados coincidan con el elemento de diseño vectorial. Para llevar eso acabo, puedes hacer doble clic en el PNG en la vista de archivos del proyecto de la ventana Project; en el margen izquierdo del editor de código también se muestra la imagen PNG cuando tu código hace referencia al elemento de diseño, como se muestra en la figura 5.

    Figura 5: Se muestra una imagen PNG en el margen izquierdo del editor de código.

Eliminación de un elemento de diseño vectorial de un proyecto

Para quitar un elemento de diseño vectorial de un proyecto:

  1. En la ventana Project, borra el archivo XML vectorial generado seleccionando el archivo y presionando la tecla Delete (o selecciona Edit > Delete).
  2. Aparecerá el diálogo Safe Delete.

  3. Si lo deseas, puedes seleccionar opciones para determinar el área de tu proyecto en la que se usa el archivo y hacer clic en OK.
  4. Android Studio borrará el archivo del proyecto y de la unidad. Sin embargo, si decides buscar áreas del proyecto en las que se use el archivo y se detecten algunos casos de uso, puedes verlas y decidir si deseas borrarlo.

  5. Selecciona Build > Clean Project.
  6. Cualquier archivo XML y PNG generado de manera automática que corresponda al elemento de diseño vectorial borrado se elimina del proyecto y la unidad.

Entrega de una App que contiene elementos de diseño vectoriales

Si usaste la técnica de la biblioteca de compatibilidad, o si tu nivel de API mínimo corresponde a Android 5.0 (nivel de API 21) o una versión posterior, tu APK contiene los elementos de diseño vectoriales que agregaste con Vector Asset Studio. Estos APK serán más pequeños que cuando se convierten las imágenes vectoriales en PNG.

Cuando el nivel mínimo de tu API incluye Android 4.4 (nivel de API 20) o una versión anterior, y tienes los elementos de diseño vectorial y las imágenes de trama correspondientes en tu proyecto, tienes dos opciones para proporcionar tus archivos APK:

Compatibilidad y restricciones para archivos PSD

Vector Asset Studio no admite todas las funciones de archivos PSD. En la siguiente lista se resumen características de PSD compatibles y no compatibles, así como también detalles de conversión.

Documento

Admitidas:

Detalles de conversión:

No admitidas:

Formas

Admitidas:

No admitidas:

Trazos y rellenos

Admitidas:

Detalles de conversión:

No admitidas:

Opacidad

Admitidas:

Detalles de conversión:

Capas

Admitidas:

Detalles de conversión:

No admitidas:

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

Get the latest Android developer news and tips that will help you find success on Google Play.

* Required Fields

Hooray!

Follow Google Developers on WeChat

Browse this site in ?

You requested a page in , but your language preference for this site is .

Would you like to change your language preference and browse this site in ? If you want to change your language preference later, use the language menu at the bottom of each page.

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 short survey?
Help us improve the Android developer experience.
(Sep 2017 survey)