diff options
author | David Friedman <dmail@google.com> | 2015-07-02 02:45:30 +0000 |
---|---|---|
committer | Android Git Automerger <android-git-automerger@android.com> | 2015-07-02 02:45:30 +0000 |
commit | 00f0716a9521c668e0e42c36ee19a5f58e62f00f (patch) | |
tree | cafa069e99f95a73d3bc4504e49dc211e9d6f373 /docs/html-intl/intl/es/design | |
parent | 9ee2f2c90fb090e6055fa50428ae967ca750d236 (diff) | |
parent | 2ebfc3f78483842c789688da47b721f60b4149e4 (diff) | |
download | frameworks_base-00f0716a9521c668e0e42c36ee19a5f58e62f00f.zip frameworks_base-00f0716a9521c668e0e42c36ee19a5f58e62f00f.tar.gz frameworks_base-00f0716a9521c668e0e42c36ee19a5f58e62f00f.tar.bz2 |
am 2ebfc3f7: am fa8eb1e0: Merge "Docs: Localization of Design pages on DAC. Bug: 20503708" into mnc-preview-docs
* commit '2ebfc3f78483842c789688da47b721f60b4149e4':
Docs: Localization of Design pages on DAC. Bug: 20503708
Diffstat (limited to 'docs/html-intl/intl/es/design')
5 files changed, 1648 insertions, 0 deletions
diff --git a/docs/html-intl/intl/es/design/get-started/principles.jd b/docs/html-intl/intl/es/design/get-started/principles.jd new file mode 100644 index 0000000..351a4f7 --- /dev/null +++ b/docs/html-intl/intl/es/design/get-started/principles.jd @@ -0,0 +1,307 @@ +page.title=Principios de diseño para Android +@jd:body + +<p>Estos principios de diseño fueron creados por el +equipo de experiencia del usuario de Android para su propio uso, con el fin de tener siempre en cuenta lo mejor para los usuarios. +En cuanto a los desarrolladores y diseñadores de Android, continúan +utilizando las pautas de diseño más detalladas para los diferentes +tipos de dispositivos.</p> + +<p> +Tenga en cuenta estos principios cuando ponga en práctica su propia +creatividad e ideas de diseño. Desvíese de lo tradicional con un propósito. +</p> + +<h2 id="enchant-me">Cautívame</h2> + +<div class="layout-content-row"> + <div class="layout-content-col span-7"> + +<h4 id="delight-me">Deléitame de formas sorprendentes</h4> +<p>Una superficie atractiva, una animación colocada en el lugar correcto o un efecto de sonido bien sincronizado suelen ser experiencias +placenteras. Los efectos sutiles contribuyen a crear un sentimiento de facilidad y la sensación de que se cuenta con una fuerza +poderosa.</p> + + </div> + <div class="layout-content-col span-6"> + + <img src="{@docRoot}design/media/principles_delight.png"> + + </div> +</div> + +<div class="vspace size-2"> </div> + +<div class="layout-content-row"> + <div class="layout-content-col span-7"> + +<h4 id="real-objects-more-fun">Los objetos reales son más divertidos que los botones y los menús</h4> +<p>Permita que los usuarios toquen y manipulen directamente los objetos de su aplicación. Esto reduce el esfuerzo cognitivo +que se necesita para llevar a cabo una tarea que resulte satisfactoria a nivel emocional.</p> + + </div> + <div class="layout-content-col span-6"> + + <img src="{@docRoot}design/media/principles_real_objects.png"> + + </div> +</div> + +<div class="vspace size-2"> </div> + +<div class="layout-content-row"> + <div class="layout-content-col span-7"> + +<h4 id="make-it-mine">Permíteme darle un toque personal</h4> +<p>A los usuarios les gusta agregar toques personales, ya que esto los ayuda a sentirse cómodos y a sentir que tienen el control. Ofrezca +opciones predeterminadas prácticas y atractivas, pero también tenga en cuenta personalizaciones opcionales y divertidas que no entorpezcan las +tareas principales.</p> + + </div> + <div class="layout-content-col span-6"> + + <img src="{@docRoot}design/media/principles_make_it_mine.png"> + + </div> +</div> + +<div class="vspace size-2"> </div> + +<div class="layout-content-row"> + <div class="layout-content-col span-7"> + +<h4 id="get-to-know-me">Conóceme</h4> +<p>Con el paso del tiempo, conozca las preferencias de los usuarios. En lugar de pedirles a los usuarios que elijan las mismas cosas una y otra +vez, permita que puedan acceder fácilmente a las opciones que ya eligieron antes.</p> + + </div> + <div class="layout-content-col span-6"> + + <img src="{@docRoot}design/media/principles_get_to_know_me.png"> + + </div> +</div> + +<h2 id="simplify-my-life">Simplifica mi vida</h2> + +<div class="layout-content-row"> + <div class="layout-content-col span-7"> + +<h4 id="keep-it-brief">Sé breve</h4> +<p>Utilice frases cortas con palabras simples. Las personas tienden a omitir las oraciones largas.</p> + + </div> + <div class="layout-content-col span-6"> + + <img src="{@docRoot}design/media/principles_keep_it_brief.png"> + + </div> +</div> + +<div class="vspace size-2"> </div> + +<div class="layout-content-row"> + <div class="layout-content-col span-7"> + +<h4 id="pictures-faster-than-words">Las imágenes son más prácticas que las palabras</h4> +<p>Considere la idea de utilizar imágenes para explicar las ideas. Las imágenes atraen la atención de las personas y pueden ser mucho más eficientes +que las palabras.</p> + + </div> + <div class="layout-content-col span-6"> + + <img src="{@docRoot}design/media/principles_pictures.png"> + + </div> +</div> + +<div class="vspace size-2"> </div> + +<div class="layout-content-row"> + <div class="layout-content-col span-7"> + +<h4 id="decide-for-me">Decide por mí, pero permíteme tener la última palabra</h4> +<p>Siga su instinto y actúe sin preguntar primero. Tener que elegir demasiadas veces y tomar muchas decisiones hace que las personas +se sientan molestas. Permita que los usuarios puedan deshacer sus elecciones en caso de que no sean lo que ellos desean.</p> + + </div> + <div class="layout-content-col span-6"> + + <img src="{@docRoot}design/media/principles_decide_for_me.png"> + + </div> +</div> + +<div class="vspace size-2"> </div> + +<div class="layout-content-row"> + <div class="layout-content-col span-7"> + +<h4 id="only-show-when-i-need-it">Solo muéstrame lo que necesito, cuando lo necesito</h4> +<p>Los usuarios se sienten abrumados cuando se les presenta demasiada información al mismo tiempo. Divida las tareas y la información en fragmentos pequeños +y fáciles de digerir. Oculte las opciones que no son fundamentales en el momento y capacite a los usuarios sobre la marcha.</p> + + </div> + <div class="layout-content-col span-6"> + + <img src="{@docRoot}design/media/principles_information_when_need_it.png"> + + </div> +</div> + +<div class="vspace size-2"> </div> + +<div class="layout-content-row"> + <div class="layout-content-col span-7"> + +<h4 id="always-know-where-i-am">Siempre debo saber dónde me encuentro</h4> +<p>Haga que los usuarios sientan que conocen el camino de regreso. Para ello, diseñe las distintas partes de su aplicación de modo tal que se vean diferentes y +utilice transiciones para mostrar la relación entre las pantallas. Proporcione comentarios sobre las tareas que están en curso.</p> + + </div> + <div class="layout-content-col span-6"> + + <img src="{@docRoot}design/media/principles_navigation.png"> + + </div> +</div> + +<div class="vspace size-2"> </div> + +<div class="layout-content-row"> + <div class="layout-content-col span-7"> + +<h4 id="never-lose-my-stuff">Nunca pierdas lo que es mío</h4> +<p>Guarde aquellas cosas que los usuarios crearon y permítales acceder a ellas desde cualquier lugar. Recuerde las configuraciones, +los toques personales y las creaciones en todos los teléfonos, las tablets y las computadoras. Esta es la forma de hacer que las actualizaciones +sean lo más simple del mundo.</p> + + </div> + <div class="layout-content-col span-6"> + + <img src="{@docRoot}design/media/principles_never_lose_stuff.png"> + + </div> +</div> + +<div class="vspace size-2"> </div> + +<div class="layout-content-row"> + <div class="layout-content-col span-7"> + +<h4 id="looks-same-should-act-same">Si se ve igual, debe funcionar de la misma manera</h4> +<p>Ayude a los usuarios a distinguir las diferencias funcionales al lograr que se vean diferentes en lugar de sutiles. +Evite los modos, que son sitios que lucen similar pero actúan diferente ante la misma entrada.</p> + + </div> + <div class="layout-content-col span-6"> + + <img src="{@docRoot}design/media/principles_looks_same.png"> + + </div> +</div> + +<div class="vspace size-2"> </div> + +<div class="layout-content-row"> + <div class="layout-content-col span-7"> + +<h4 id="interrupt-only-if-important">Solo interrúmpeme si es importante</h4> +<p>Al igual que un buen asistente personal, evite a los usuarios los pormenores poco importantes. Las personas desean estar +concentradas y, a menos que sea fundamental y esté sujeta a un plazo de tiempo, una interrupción puede resultar agobiante y frustrante.</p> + + </div> + <div class="layout-content-col span-6"> + + <img src="{@docRoot}design/media/principles_important_interruption.png"> + + </div> +</div> + +<h2 id="make-me-amazing">Permíteme ser asombroso</h2> + +<div class="layout-content-row"> + <div class="layout-content-col span-7"> + +<h4 id="give-me-tricks">Ofréceme trucos que funcionen en todos lados</h4> +<p>Las personas se sienten muy bien cuando descubren cosas por sí mismos. Logre que su aplicación sea más simple de utilizar al +aprovechar los patrones visuales y la memoria muscular de otras aplicaciones de Android. Por ejemplo, el gesto de deslizar rápidamente +puede ser un buen acceso directo de navegación.</p> + + </div> + <div class="layout-content-col span-6"> + + <img src="{@docRoot}design/media/principles_tricks.png"> + + </div> +</div> + +<div class="vspace size-2"> </div> + +<div class="layout-content-row"> + <div class="layout-content-col span-7"> + +<h4 id="its-not-my-fault">No es mi culpa</h4> +<p>Sea sutil cuando les solicite a los usuarios que realicen correcciones. Ellos desean sentirse inteligentes cuando usan la +aplicación que usted creó. Si hacen algo mal, bríndeles instrucciones claras de recuperación, pero evite darles detalles técnicos. +Sería incluso mejor que usted lo solucione en segundo plano.</p> + + </div> + <div class="layout-content-col span-6"> + + <img src="{@docRoot}design/media/principles_error.png"> + + </div> +</div> + +<div class="vspace size-2"> </div> + +<div class="layout-content-row"> + <div class="layout-content-col span-7"> + +<h4 id="sprinkle-encouragement">Fomenta lo simple</h4> +<p>Desglose las tareas complejas en pasos más pequeños que se puedan cumplir fácilmente. Ofrezca comentarios sobre las acciones, +incluso si es simplemente un halago sutil.</p> + + </div> + <div class="layout-content-col span-6"> + + <img src="{@docRoot}design/media/principles_sprinkle_encouragement.png"> + + </div> +</div> + +<div class="vspace size-2"> </div> + +<div class="layout-content-row"> + <div class="layout-content-col span-7"> + +<h4 id="do-heavy-lifting-for-me">Haz el trabajo pesado por mí</h4> +<p>Haga que los principiantes se sientan como expertos al permitirles hacer cosas que pensaron que nunca podrían hacer. Por +ejemplo, a través de los accesos directos en los que se combinan múltiples efectos de fotografías, puede lograr que las fotografías de principiantes se vean maravillosas +en solo algunos pasos.</p> + + </div> + <div class="layout-content-col span-6"> + + <img src="{@docRoot}design/media/principles_heavy_lifting.png"> + + </div> +</div> + +<div class="vspace size-2"> </div> + +<div class="layout-content-row"> + <div class="layout-content-col span-7"> + +<h4 id="make-important-things-fast">Haz que lo importante sea rápido</h4> +<p>No todas las acciones son iguales. Decida qué es lo más importante en su aplicación y haga +que los usuarios lo puedan encontrar fácilmente y utilizar de forma rápida, como el obturador de una cámara o el botón de pausa de un reproductor de música.</p> + + </div> + <div class="layout-content-col span-6"> + + <img src="{@docRoot}design/media/principles_make_important_fast.png"> + + </div> +</div> diff --git a/docs/html-intl/intl/es/design/material/index.jd b/docs/html-intl/intl/es/design/material/index.jd new file mode 100644 index 0000000..8cd3428 --- /dev/null +++ b/docs/html-intl/intl/es/design/material/index.jd @@ -0,0 +1,186 @@ +page.title=Material Design +page.tags=Material,design +page.type=design +page.image=design/material/images/MaterialLight.png + +@jd:body + +<!-- developer docs box --> +<a class="notice-developers right" href="{@docRoot}training/material/index.html"> + <div> + <h3>Documentos para desarrolladores</h3> + <p>Creación de aplicaciones con Material Design</p> + </div> +</a> + +<!-- video box --> +<a class="notice-developers-video" href="https://www.youtube.com/watch?v=p4gmvHyuZzw"> +<div> + <h3>Video</h3> + <p>Introducción a Material Design</p> +</div> +</a> + +<!-- video box --> +<a class="notice-developers-video" href="https://www.youtube.com/watch?v=YaG_ljfzeUw"> +<div> + <h3>Video</h3> + <p>Papel y tinta: los materiales más importantes</p> +</div> +</a> + +<!-- video box --> +<a class="notice-developers-video" href="https://www.youtube.com/watch?v=XOcCOBe8PTc"> +<div> + <h3>Video</h3> + <p>Material Design en la aplicación Google I/O</p> +</div> +</a> + + + +<p itemprop="description">Material Design es una guía integral para el diseño visual, de movimientos y +de interacción en distintas plataformas y dispositivos. Android ahora es compatible con las aplicaciones de +Material Design. Para usar Material Design en sus aplicaciones de Android, siga las pautas descritas +en la <a href="http://www.google.com/design/spec">especificación de Material Design</a> y use los +nuevos componentes y funcionalidades disponibles en Android 5.0 (nivel de API 21) y versiones posteriores.</p> + +<p>En Android, se proporcionan los siguientes elementos que le permitirán crear aplicaciones en Material Design:</p> + +<ul> + <li>un tema nuevo;</li> + <li>nuevos widgets para vistas complejas;</li> + <li>nuevas API (interfaces de programación de aplicaciones) para sombras y animaciones personalizadas.</li> +</ul> + +<p>Para obtener más información sobre la implementación de Material Design en Android, consulte +<a href="{@docRoot}training/material/index.html">Creación de aplicaciones con Material Design</a>.</p> + + +<h3>Tema Material</h3> + +<p>El tema Material le ofrece un nuevo estilo para su aplicación, widgets del sistema que le permiten configurar +la paleta de colores y animaciones predeterminadas para información táctil y transiciones de actividades.</p> + +<!-- two columns --> +<div style="width:700px;margin-top:25px;margin-bottom:20px"> +<div style="float:left;width:250px;margin-left:40px;margin-right:60px;"> + <img src="{@docRoot}design/material/images/MaterialDark.png" width="500" height="238" /> + <div style="width:140px;margin:0 auto"> + <p style="margin-top:8px">Tema Dark Material</p> + </div> +</div> +<div style="float:left;width:250px;margin-right:0px;"> + <img src="{@docRoot}design/material/images/MaterialLight.png" width="500" height="238" /> + <div style="width:140px;margin:0 auto"> + <p style="margin-top:8px">Tema Light Material</p> + </div> +</div> +<br style="clear:left"/> +</div> + +<p>Para obtener más información, consulte <a href="{@docRoot}training/material/theme.html">Uso del tema +Material</a>.</p> + + +<h3>Listas y tarjetas</h3> + +<p>Android proporciona dos widgets nuevos para mostrar listas y tarjetas con estilos y +animaciones de Material Design:</p> + +<!-- two columns --> +<div style="width:700px;margin-top:25px;margin-bottom:20px"> +<div style="float:left;width:250px;margin-left:40px;margin-right:60px;"> + <img src="{@docRoot}design/material/images/list_mail.png" width="500" height="426" /> + <p>El nuevo widget <code>RecyclerView</code> es una versión más acoplable de <code>ListView</code> + que admite diferentes tipos de diseños y proporciona mejoras en el rendimiento.</p> +</div> +<div style="float:left;width:250px;margin-right:0px;"> + <img src="{@docRoot}design/material/images/card_travel.png" width="500" height="426" /> + <p>El nuevo widget <code>CardView</code> le permite mostrar extractos de información importante dentro de + tarjetas que tienen apariencia y estilo coherentes.</p> +</div> +<br style="clear:left"/> +</div> + +<p>Para obtener más información, consulte <a href="{@docRoot}training/material/lists-cards.html">Creación de listas +y tarjetas</a>.</p> + + +<h3>Visualización de sombras</h3> + +<p>Además de las propiedades X e Y, las vistas de Android ahora poseen una +propiedad Z. Esta propiedad nueva representa la elevación de una vista, que determina lo siguiente:</p> + +<ul> +<li>El tamaño de la sombra: las vistas con valores Z más elevados proyectan sombras más grandes.</li> +<li>El orden del dibujo: las vistas con valores Z más elevados aparecen sobre las otras vistas.</li> +</ul> + +<div style="width:290px;margin-left:35px;float:right"> + <div class="framed-nexus5-port-span-5"> + <video class="play-on-hover" autoplay> + <source src="{@docRoot}design/material/videos/ContactsAnim.mp4"/> + <source src="{@docRoot}design/videos/ContactsAnim.webm"/> + <source src="{@docRoot}design/videos/ContactsAnim.ogv"/> + </video> + </div> + <div style="font-size:10pt;margin-left:20px;margin-bottom:30px"> + <em>Para volver a reproducir la película, haga clic en la pantalla del dispositivo.</em> + </div> +</div> + +<p>Para obtener más información, consulte <a href="{@docRoot}training/material/shadows-clipping.html">Definición +de vistas de recorte y sombras</a>.</p> + + +<h3>Animaciones</h3> + +<p>Las nuevas API de animaciones le permiten crear animaciones personalizadas para la información táctil en los controles de IU, +además de realizar cambios en el estado de las vistas y transiciones entre actividades.</p> + +<p>Estas API le permiten hacer lo siguiente:</p> + +<ul> +<li style="margin-bottom:15px"> +responder a los eventos táctiles de sus vistas mediante animaciones de <strong>información táctil</strong>; +</li> +<li style="margin-bottom:15px"> +ocultar y mostrar vistas con animaciones con <strong>efecto circular</strong>; +</li> +<li style="margin-bottom:15px"> +alternar entre actividades con animaciones personalizadas de <strong>transición de actividades</strong>; +</li> +<li style="margin-bottom:15px"> +crear animaciones más naturales con <strong>movimiento curvo</strong>; +</li> +<li style="margin-bottom:15px"> +animar los cambios en una o más propiedades de las vistas con las animaciones de <strong>cambio de estado de la vista</strong>; +</li> +<li style="margin-bottom:15px"> +mostrar animaciones en los <strong>elementos de diseño de la lista de estados</strong> entre los cambios de estado de las vistas. +</li> +</ul> + +<p>Las animaciones de la información táctil se concentran en diferentes vistas estándar, como los botones. Las nuevas API +le permiten personalizar estas animaciones y agregarlas a sus vistas personalizadas.</p> + +<p>Para obtener más información, consulte <a href="{@docRoot}training/material/animations.html">Definición de animaciones +personalizadas</a>.</p> + + +<h3>Elementos de diseño</h3> + +<p>Estas nuevas capacidades para los elementos de diseño le permiten implementar aplicaciones de Material Design:</p> + +<ul> +<li>Los <strong>dibujables en vector</strong> se pueden escalar sin perder definición y son perfectos +para los iconos de las aplicaciones de un solo color.</li> +<li>El <strong>teñido de los dibujables</strong> le permite definir mapas de bits como máscaras alfa y pintarlos con +un color durante el tiempo de ejecución.</li> +<li>La <strong>extracción de color</strong> le permite extraer automáticamente colores prominentes de una +imagen del mapa de bits.</li> +</ul> + +<p>Para obtener más información, consulte <a href="{@docRoot}training/material/drawables.html">Trabajo con +elementos de diseño</a>.</p> diff --git a/docs/html-intl/intl/es/design/patterns/confirming-acknowledging.jd b/docs/html-intl/intl/es/design/patterns/confirming-acknowledging.jd new file mode 100644 index 0000000..fbaa060 --- /dev/null +++ b/docs/html-intl/intl/es/design/patterns/confirming-acknowledging.jd @@ -0,0 +1,70 @@ +page.title=Confirmación y reconocimiento +page.tags=dialog,toast,notification +@jd:body + +<p>En algunos casos, cuando un usuario invoca una acción desde su aplicación, se recomienda <em>confirmar</em> o proporcionar un <em>reconocimiento</em> de dicha acción a través del texto.</p> + +<div class="layout-content-row"> + <div class="layout-content-col span-6"> + <img src="{@docRoot}design/media/confirm_ack_confirming.png"> + <p><strong>Confirmación</strong> es solicitarle al usuario que verifique que realmente desea proceder con una acción que acaba de invocar. En algunos casos, la confirmación se presenta junto con una advertencia o mensaje con información importante relacionada con la acción que el usuario debe aprobar.</p> + </div> + <div class="layout-content-col span-6"> + <img src="{@docRoot}design/media/confirm_ack_acknowledge.png"> + <p>El <strong>reconocimiento</strong> hace referencia al hecho de mostrar un determinado texto para informarle al usuario que la acción que acaba de invocar ya se completó. De este modo, se elimina la incertidumbre sobre las operaciones implícitas que lleva a cabo el sistema. En algunos casos, el reconocimiento se presenta junto con una opción para deshacer la acción.</p> + </div> +</div> + +<p>Comunicarse con los usuarios de este modo permite reducir la incertidumbre respecto de acciones pasadas o futuras. Mediante la confirmación o el reconocimiento también se puede evitar que los usuarios cometan errores de los que podrían arrepentirse.</p> + +<h2>Cuándo se debe solicitar una confirmación o proporcionar un reconocimiento de las acciones de los usuarios</h2> +<p>No es necesario que se solicite una confirmación o se proporcione un reconocimiento para todas las acciones. Utilice este diagrama de flujo cuando tenga que tomar decisiones relacionadas con el diseño.</p> +<img src="{@docRoot}design/media/confirm_ack_flowchart.png"> + +<h2>Confirmación</h2> +<div class="layout-content-row"> + <div class="layout-content-col span-6"> + <h4>Ejemplo: Google Play Books</h4> + <img src="{@docRoot}design/media/confirm_ack_ex_books.png"> + <p>En este ejemplo, el usuario solicitó eliminar un libro de su biblioteca de Google Play. Aparecerá una <a href="{@docRoot}design/building-blocks/dialogs.html#alerts">alerta</a> para confirmar esta acción porque es importante que el usuario comprenda que el libro ya no estará disponible desde ningún dispositivo.</p> + <p>Cuando diseñe un cuadro de diálogo de confirmación, asegúrese de que el título sea significativo y que incluya la acción solicitada.</p> + </div> + <div class="layout-content-col span-7"> + <h4>Ejemplo: Android Beam</h4> + <img src="{@docRoot}design/media/confirm_ack_ex_beam.png"> + <p>No es necesario que las confirmaciones se presenten en todas las alertas con dos botones. Luego de iniciar Android Beam, se le solicita al usuario que seleccione el contenido que desea compartir (en este ejemplo, se trata de una fotografía). Si el usuario decide no continuar, simplemente se descartará el teléfono de la lista.</p> + </div> +</div> + +<h2>Reconocimiento</h2> +<div class="layout-content-row"> + <div class="layout-content-col span-6"> + <h4>Ejemplo: Borrador de Gmail abandonado y guardado</h4> + <img src="{@docRoot}design/media/confirm_ack_ex_draftsave.png"> + <p>En este ejemplo, si el usuario navega con los botones Back o Up desde la pantalla de redacción de Gmail, posiblemente ocurrirá algo inesperado: el borrador actual se guardará automáticamente. Esto se mostrará a través de un reconocimiento en forma de aviso. Dicho aviso desaparece luego de algunos segundos.</p> + <p>En este caso, no se puede incluir la opción de deshacer porque el almacenamiento fue iniciado por la aplicación, no por el usuario. Gracias a esto, se puede continuar redactando el mensaje de forma rápida y fácil con solo navegar hasta la lista de borradores.</p> + + </div> + <div class="layout-content-col span-6"> + <h4>Ejemplo: Conversación de Gmail eliminada</h4> + <img src="{@docRoot}design/media/confirm_ack_draft_deleted.png"> + <p>Después de que el usuario elimina una conversación de la lista de Gmail, aparece un mensaje de reconocimiento con la opción de deshacer la acción. Dicho reconocimiento seguirá en pantalla hasta que el usuario lleve a cabo una acción no relacionada, como desplazarse por la lista.</p> + </div> +</div> + +<h2>Sin confirmación ni reconocimiento</h2> +<div class="layout-content-row"> + <div class="layout-content-col span-6"> + <h4>Ejemplo: Hacer +1</h4> + <img style="padding: 33px 0 30px;" src="{@docRoot}design/media/confirm_ack_ex_plus1.png"> + <p><strong>No se necesita confirmación</strong>. Si el usuario hizo +1 sin querer, esto no es un problema. Simplemente, puede tocar el botón de nuevo para deshacer la acción.</p> + <p><strong>No se necesita un reconocimiento</strong>. El usuario verá que el botón +1 parpadea y cambia a color rojo. Esa es una señal muy clara.</p> + </div> + <div class="layout-content-col span-7"> + <h4>Ejemplo: Eliminación de una aplicación de la pantalla de inicio</h4> + <img src="{@docRoot}design/media/confirm_ack_ex_removeapp.png"> + <p><strong>No se necesita confirmación</strong>. Esta es una acción intencionada: el usuario debe arrastrar y colocar un elemento en un destino relativamente grande y aislado. Por lo tanto, es poco probable que se cometan errores. No obstante, si el usuario se arrepiente de la decisión que tomó, solo demorará algunos segundos en recuperar lo eliminado.</p> + <p><strong>No se necesita un reconocimiento</strong>. El usuario sabrá que la aplicación ya no aparecerá en la Pantalla de inicio porque él mismo la hizo desaparecer al arrastrarla.</p> + + </div> +</div> diff --git a/docs/html-intl/intl/es/design/patterns/navigation.jd b/docs/html-intl/intl/es/design/patterns/navigation.jd new file mode 100644 index 0000000..6332491 --- /dev/null +++ b/docs/html-intl/intl/es/design/patterns/navigation.jd @@ -0,0 +1,213 @@ +page.title=Navegación con los botones Back y Up +page.tags="navigation","activity","task","up navigation","back navigation" +page.image=/design/media/navigation_between_siblings_gmail.png +@jd:body + +<a class="notice-developers" href="{@docRoot}training/implementing-navigation/index.html"> + <div> + <h3>Documentos para desarrolladores</h3> + <p>Implementación de la navegación eficiente</p> + </div> +</a> + +<p itemprop="description">La navegación coherente es un componente fundamental de la experiencia general del usuario. Pocas situaciones frustran más a los +usuarios que la navegación básica que se comporta de forma irregular e inesperada. En Android 3.0, +se introdujeron cambios significativos en el comportamiento global de la navegación. Si sigue detalladamente +las pautas de navegación con los botones Back y Up, la navegación en su aplicación será predecible y confiable para los usuarios.</p> +<p>En Android 2.3 y versiones anteriores, se confió en el botón <em>Back</em> del sistema para respaldar la navegación dentro de una +aplicación. Con la introducción de las barras de acciones en Android 3.0, apareció un segundo mecanismo de navegación: +el botón <em>Up</em>, que consiste en el icono de la aplicación y una pequeña flecha a la izquierda.</p> + +<img src="{@docRoot}design/media/navigation_with_back_and_up.png"> + +<h2 id="up-vs-back">Up en comparación con Back</h2> + +<p>El botón Up se utiliza para navegar dentro de una aplicación sobre la base de las relaciones jerárquicas +entre pantallas. Por ejemplo, si en la pantalla A se muestra una lista de elementos y, si se selecciona un elemento, se conduce al usuario a la +pantalla B (en la que se presenta ese elemento de forma más detallada), entonces en la pantalla B se debe mostrar el botón Up para regresar +a la pantalla A.</p> +<p>Si una pantalla aparece en la parte superior de una aplicación (es decir, en el inicio de la aplicación), no debe incluir el botón Up +.</p> + +<p>El botón Back del sistema se utiliza para navegar, en orden cronológico inverso, por el historial +de pantallas en las que recientemente trabajó el usuario. Generalmente, se basa en las relaciones temporales +entre pantallas, y no en la jerarquía de la aplicación.</p> + +<p>Cuando la pantalla que se visitó anteriormente es también el componente jerárquico primario de la pantalla actual, si se presiona el botón +Back, se obtendrá el mismo resultado que si se presiona el botón Up, y esto es algo que sucede a +menudo. Sin embargo, a diferencia del botón Up, mediante el cual se garantiza que el usuario permanezca en la aplicación, el botón Back +le permite al usuario regresar a la pantalla de inicio o, incluso, a otra aplicación.</p> + +<img src="{@docRoot}design/media/navigation_up_vs_back_gmail.png"> + +<p>El botón Back también permite diferentes comportamientos que no están vinculados directamente con la navegación entre pantallas: +</p> +<ul> +<li>descartar las ventanas flotantes (cuadros de diálogo o emergentes);</li> +<li>descartar las barras de acción contextuales y eliminar el resaltado de los elementos seleccionados;</li> +<li>ocultar el teclado en la pantalla (IME [Editores de métodos de entrada]).</li> +</ul> +<h2 id="within-app">Navegación dentro de su aplicación</h2> + +<h4>Navegación hacia pantallas con múltiples puntos de entrada</h4> +<p>En algunos casos, las pantallas no tienen una posición fija dentro de la jerarquía de la aplicación, y se puede acceder a ellas +desde múltiples puntos de entrada (como la pantalla Configuración, a la que se puede acceder desde cualquier otra pantalla +de la aplicación). En este caso, el botón Up debe permitir regresar a la pantalla remitente, por lo que se comportaría +de forma idéntica al botón Back.</p> +<h4>Cambio de vista dentro de una pantalla</h4> +<p>Cambiar las opciones de vista de una pantalla no modifica el comportamiento de los botones Up o Back: la pantalla sigue estando +en el mismo lugar dentro de la jerarquía de la aplicación y no se crea ningún historial de navegación nuevo.</p> +<p>Entre los ejemplos de cambios en las vistas, se encuentran los siguientes:</p> +<ul> +<li>cambio de vistas mediante las pestañas o los deslizamientos de izquierda a derecha;</li> +<li>cambio de vistas mediante un menú desplegable (también conocido como pestañas colapsadas);</li> +<li>filtrado de listas;</li> +<li>clasificación de listas;</li> +<li>modificación de las características de la pantalla (como el zoom).</li> +</ul> +<h4>Navegación entre pantallas relacionadas</h4> +<p>Si su aplicación es compatible con la navegación desde una lista de elementos hacia una vista de detalles de alguno de esos elementos, generalmente, +es preferible respaldar la navegación de dirección desde ese elemento a otro anterior +o siguiente en la lista. Por ejemplo, en Gmail, es fácil deslizarse hacia la izquierda o la derecha desde una conversación +para ver una conversación anterior o más nueva en la misma bandeja de entrada. Al igual que cuando se cambia la vista dentro de una pantalla, en este tipo de +navegación no se cambia el comportamiento de los botones Up o Back.</p> + +<img src="{@docRoot}design/media/navigation_between_siblings_gmail.png"> + +<p>Sin embargo, una excepción importante a este caso se presenta cuando se explora entre vistas de detalles relacionadas que no están vinculadas +mediante la lista que se está utilizando; por ejemplo, cuando se explora en Play Store entre diferentes aplicaciones +del mismo desarrollador o entre álbumes del mismo artista. En estos casos, si se sigue cada vínculo, esto queda registrado en el +historial, por lo que, a través del botón Back, se regresa a cada pantalla que se visitó anteriormente. El botón Up debe seguir omitiendo +estas pantallas relacionadas y navegar hacia la pantalla del contenedor visitada más recientemente.</p> + +<img src="{@docRoot}design/media/navigation_between_siblings_market1.png"> + +<p>Usted puede lograr que el comportamiento del botón Up sea incluso más inteligente teniendo en cuenta sus conocimientos de la vista +detallada. Si extendemos el ejemplo de Play Store mencionado antes, imaginemos que el usuario navegó desde el último +libro visto hacia los detalles de la adaptación de la película. En ese caso, mediante el botón Up podrá regresar a un contenedor +(Películas) por el que el usuario no navegó anteriormente.</p> + +<img src="{@docRoot}design/media/navigation_between_siblings_market2.png"> + +<h2 id="into-your-app">Navegación dentro de la aplicación a través de los widgets y las notificaciones de la pantalla de inicio</h2> + +<p>Podrá utilizar los widgets y las notificaciones de la pantalla de inicio para ayudar a los usuarios a navegar directamente hacia las pantallas +que se encuentran en posiciones más profundas dentro de la jerarquía de su aplicación. Por ejemplo, tanto el widget de la bandeja de entrada de Gmail como las notificaciones de los mensajes nuevos + pueden omitir la pantalla Bandeja de entrada y llevar al usuario directamente hacia una vista de conversación.</p> + +<p>En ambos casos, el botón Up se debe utilizar de la siguiente manera:</p> + +<ul> +<li><em>Si a la pantalla de destino generalmente se llega desde una determinada pantalla dentro de su +aplicación</em>, el botón Up debe permitir la navegación hacia esa pantalla.</li> +<li><em>De lo contrario, </em>el botón Up debe permitir la navegación hacia la pantalla que está en el nivel superior ("Inicio") de su aplicación.</li> +</ul> + +<p>En el caso del botón Back, la navegación debe ser más predecible. Para ello, coloque en la +pila de retroceso de la tarea la ruta completa de la navegación ascendente hacia la pantalla que se encuentra en el nivel superior de la aplicación. De este modo, los usuarios que +no recuerdan cómo ingresaron a su aplicación podrán navegar hacia la pantalla del nivel superior de la aplicación antes de +salir.</p> + +<p>A modo de ejemplo, el widget de la pantalla Inicio de Gmail posee un botón para llevar al usuario directamente a la pantalla de +redacción. Mediante los botones Up o Back de la pantalla de redacción el usuario debería poder dirigirse hacia la Bandeja de entrada y, a partir de allí, continuar hacia la pantalla Inicio +por medio del botón Back.</p> + +<img src="{@docRoot}design/media/navigation_from_outside_back.png"> + +<h4>Notificaciones indirectas</h4> + +<p>Cuando su aplicación necesita presentar información sobre múltiples eventos de forma simultánea, puede utilizar una +sola notificación que dirija al usuario a una pantalla intersticial. En esta pantalla, se resumen dichos +eventos y se proporcionan rutas para que el usuario navegue más profundamente por la aplicación. Las notificaciones de este estilo se +denominan <em>notificaciones indirectas</em>.</p> + +<p>A diferencia de las notificaciones estándar (directas), si se presiona Back desde una pantalla intersticial de una +notificación indirecta, el usuario será dirigido hacia el punto en el que se desencadenó la notificación. No se incluyen +pantallas adicionales en la pila de retroceso. Una vez que el usuario se dirige hacia la aplicación desde la +pantalla intersticial, los botones Up y Back se comportan del mismo modo que lo hacen en las notificaciones estándar, como se describió antes: +navegan dentro de la aplicación en lugar de regresar a la pantalla intersticial.</p> + +<p>Por ejemplo, supongamos que un usuario de Gmail recibe una notificación indirecta del calendario Si se toca +esta notificación, se abrirá la pantalla intersticial, en la que se mostrarán recordatorios de varios +eventos diferentes. Si se toca Back desde la pantalla intersticial, el usuario volverá a Gmail. Si se toca un evento +en particular, el usuario saldrá de la pantalla intersticial e ingresará en la aplicación Calendario, donde se mostrarán detalles del +evento. En la pantalla de detalles del evento, es posible navegar con los botones Up y Back hacia la vista superior del calendario.</p> + +<img src="{@docRoot}design/media/navigation_indirect_notification.png"> + +<h4>Notificaciones emergentes</h4> + +<p><em>Las notificaciones emergentes</em> omiten el panel lateral de notificaciones y aparecen directamente +frente al usuario. Estas casi nunca se utilizan, y se <strong>deben reservar para ocasiones en las que es necesario proporcionar una +respuesta oportuna y es necesario realizar una interrupción en el contexto del usuario</strong>. Por ejemplo, +en Talk se utiliza este estilo para alertar al usuario sobre una invitación de un amigo para participar en una videocharla, ya que esta +invitación caducará automáticamente luego de algunos segundos.</p> + +<p>En términos de comportamiento de la navegación, las notificaciones emergentes siguen, en gran medida, el comportamiento de la pantalla intersticial +de una notificación indirecta. El botón Back le permite al usuario descartar la notificación emergente. Si el usuario navega +desde la ventana emergente hacia la aplicación que genera las notificaciones, los botones Up y Back seguirán las reglas para las notificaciones estándar +mientras se navega por la aplicación.</p> + +<img src="{@docRoot}design/media/navigation_popup_notification.png"> + +<h2 id="between-apps">Navegación entre aplicaciones</h2> + +<p>Una de las principales ventajas del sistema Android es la capacidad de las aplicaciones de activarse +mutuamente, por lo que el usuario puede navegar directamente desde una aplicación hacia otra. Por ejemplo, una +aplicación que debe tomar una fotografía puede activar la aplicación de la cámara, la cual mostrará la fotografía +en la aplicación que la activó. Esto representa una gran ventaja tanto para el desarrollador, quien puede aprovechar fácilmente el +código de otras aplicaciones, y también para el usuario, quien disfruta de una experiencia coherente para acciones +que se realizan comúnmente.</p> + +<p>Para comprender la navegación entre aplicaciones, es importante que entienda el comportamiento del marco de Android, +que se explica a continuación.</p> + +<h4>Actividades, tareas e intentos</h4> + +<p>En Android, una <strong>actividad</strong> es un componente de la aplicación que define una pantalla de +información y todas las acciones relacionadas que el usuario puede llevar a cabo. Su aplicación es un conjunto de +actividades formado por las actividades que usted crea y aquellas que reutiliza de otras aplicaciones.</p> + +<p>Una <strong>tarea</strong> es la secuencia de actividades que un usuario realiza para lograr un objetivo. En +una sola tarea, se pueden utilizar actividades de una sola aplicación o se pueden utilizar actividades de varias +aplicaciones diferentes.</p> + +<p>Un <strong>intento</strong> es un mecanismo mediante el cual una aplicación indica que necesita la ayuda de +otra aplicación para realizar una acción. Las actividades de una aplicación pueden indicar los intentos +a los que pueden dar respuesta. En el caso de los intentos comunes, como "Compartir", es posible que el usuario tenga instaladas varias aplicaciones +que pueden cumplir con esta solicitud.</p> + +<h4>Ejemplo: navegación entre aplicaciones para respaldar el uso compartido</h4> + +<p>Para comprender cómo las actividades, las tareas y los intentos funcionan en conjunto, considere cómo una aplicación les permite a los usuarios +compartir contenido a través de otra aplicación. Por ejemplo, si ejecuta la aplicación Play Store desde la pantalla de inicio, se iniciará +una nueva tarea A (vea la imagen a continuación). Después de navegar por Play Store y de tocar un libro promocionado +para ver la información detallada, el usuario permanece en la misma tarea y la extiende al agregar actividades. Si se desencadena la acción +Compartir, se le mostrará al usuario un cuadro de diálogo con una lista de todas las actividades (provenientes de diferentes aplicaciones) +que se registraron para concretar el intento de compartir.</p> + +<img src="{@docRoot}design/media/navigation_between_apps_inward.png"> + +<p>Si el usuario decide compartir el contenido a través de Gmail, la actividad de redacción de Gmail se agrega como una continuación de la +tarea A; no se crea una tarea nueva. Si Gmail estaba ejecutando su propia tarea en segundo plano, esta +no debería verse afectada.</p> + +<p>Desde la actividad de redacción, si se envía el mensaje o se toca el botón Back, se dirigirá nuevamente al usuario hacia +la actividad de detalles del libro. Si se sigue tocando el botón Back, el usuario seguirá navegando por Play +Store y, finalmente, llegará a la pantalla de inicio.</p> + +<img src="{@docRoot}design/media/navigation_between_apps_back.png"> + +<p>Sin embargo, si el usuario toca el botón Up desde la actividad de redacción, estará indicando su deseo de permanecer dentro de +Gmail. Por consiguiente, aparecerá la actividad de la lista de conversaciones de Gmail y se creará una nueva tarea B para esto. La ruta raíz de las nuevas tareas siempre conduce +a la pantalla Inicio, por lo que, si se toca el botón Back desde la lista de conversaciones, se regresará a dicha pantalla.</p> + +<img src="{@docRoot}design/media/navigation_between_apps_up.png"> + +<p>La tarea A permanece en segundo plano, y el usuario podrá regresar a ella después (por ejemplo, a través de la pantalla +Recientes). Si Gmail ya estaba ejecutando su propia tarea en segundo plano, esta se reemplazará con la +tarea B, y el contexto anterior se abandonará para darle preferencia al nuevo objetivo del usuario.</p> + +<p>Cuando su aplicación se registre para manipular los intentos de una actividad que se encuentra en un nivel profundo dentro de la jerarquía de la aplicación, +consulte <a href="#into-your-app">Navegación dentro de la aplicación a través de los widgets y +las notificaciones de la pantalla de inicio</a> para obtener información sobre cómo especificar la navegación del botón Up.</p> diff --git a/docs/html-intl/intl/es/design/patterns/notifications.jd b/docs/html-intl/intl/es/design/patterns/notifications.jd new file mode 100644 index 0000000..bdbc77b --- /dev/null +++ b/docs/html-intl/intl/es/design/patterns/notifications.jd @@ -0,0 +1,872 @@ +page.title=Notificaciones +page.tags="notifications","design","L" +@jd:body + + <a class="notice-developers" href="{@docRoot}training/notify-user/index.html"> + <div> + <h3>Documentos para desarrolladores</h3> + <p>Cómo notificar al usuario</p> + </div> +</a> + +<a class="notice-designers" href="notifications_k.html"> + <div> + <h3>Notificaciones en Android 4.4 y versiones anteriores</h3> + </div> +</a> + +<!-- video box --> +<a class="notice-developers-video" href="https://www.youtube.com/watch?v=Uiq2kZ2JHVY"> +<div> + <h3>Video</h3> + <p>DevBytes: Notificaciones en la vista previa para desarrolladores de Android L</p> +</div> +</a> + +<style> + .col-5, .col-6, .col-7 { + margin-left:0px; + } +</style> + +<p>El sistema de notificaciones les permite a los usuarios mantenerse informados sobre eventos relevantes y +oportunos +de su aplicación, como nuevos mensajes de chat de un amigo o un evento del calendario. +Piense en las notificaciones como un canal de noticias que alerta a los usuarios sobre eventos +importantes +a medida que se producen o como un registro en el que se relatan los eventos mientras el usuario no está prestando +atención y que se sincroniza de forma correspondiente en todos los dispositivos de Android.</p> + +<h4 id="New"><strong>Novedades de Android 5.0</strong></h4> + +<p>En Android 5.0, las notificaciones reciben actualizaciones importantes a nivel estructural, +visual y funcional.</p> + +<ul> + <li>En las notificaciones, se han realizado cambios visuales de forma coherente con el nuevo +tema Material Design.</li> + <li> Las notificaciones ahora están disponibles en la pantalla de bloqueo del dispositivo y +el contenido confidencial se puede seguir + ocultando detrás de dicha pantalla.</li> + <li>En las notificaciones de alta prioridad que se reciben cuando el dispositivo está en uso, ahora se utiliza un nuevo formato llamado + notificaciones emergentes.</li> + <li>Notificaciones sincronizadas en la nube: Si se omite una notificación en un dispositivo +Android, esta se omitirá + también en los demás dispositivos.</li> +</ul> + +<p class="note"><strong>Nota:</strong> El diseño de las notificaciones de esta versión de +Android se diferencia +de manera significativa del diseño de las versiones anteriores. Para obtener información sobre el diseño de las notificaciones en versiones +anteriores, consulte <a href="./notifications_k.html">Notificaciones en Android 4.4 y versiones anteriores</a>.</p> + +<h2 id="Anatomy">Anatomía de una notificación</h2> + +<p>En esta sección, se repasan las partes básicas de una notificación y cómo se pueden mostrar en +diferentes tipos de dispositivos.</p> + +<h3 id="BaseLayout">Diseño básico</h3> + +<p>Como mínimo, todas las notificaciones poseen un diseño básico que incluye lo siguiente:</p> + +<ul> + <li> El <strong>icono</strong> de la notificación. El icono simboliza la +aplicación que lo origina. También puede + indicar el tipo de notificación si la aplicación genera más de un +tipo.</li> + <li> <strong>Título</strong> de la notificación y +<strong>texto</strong> adicional.</li> + <li> Una <strong>marca de tiempo</strong>.</li> +</ul> + +<p>Las notificaciones creadas con {@link android.app.Notification.Builder Notification.Builder} +para versiones anteriores de la plataforma lucen y funcionan igual en Android +5.0; solo presentan algunos cambios de estilo que el sistema realiza +por usted. Para obtener más información sobre las notificaciones en versiones anteriores de +Android, consulte +<a href="./notifications_k.html">Notificaciones en Android 4.4 y versiones anteriores</a>.</p></p> + + + <img style="margin:20px 0 0 0" src="{@docRoot}images/android-5.0/notifications/basic_combo.png" alt="" width="700px" /> + + +<div style="clear:both;margin-top:20px"> + <p class="img-caption"> + Diseño básico de una notificación para dispositivos portátiles (izquierda) y la misma notificación en Wear (derecha), + con una fotografía del usuario y un icono de la notificación + </p> + </div> + +<h3 id="ExpandedLayouts">Diseños expandidos</h3> + + +<p>Usted puede decidir cuántos detalles mostrarán las notificaciones +de su aplicación. Las notificaciones pueden mostrar las primeras +líneas de un mensaje o la vista previa de una imagen más grande. A través de la +información adicional, se proporciona más +contexto al usuario y, en algunos casos, se puede permitir que el usuario lea todo el +mensaje. El usuario +puede acercar o alejar la imagen, o deslizar la imagen con un solo dedo para alternar entre los diseños compacto +y expandido. + En el caso de las notificaciones de un solo evento, Android proporciona tres plantillas de +diseños expandidos (texto, bandeja de entrada e + imagen) para que usted utilice en su aplicación. En las siguientes imágenes, se muestra cómo +se ven las notificaciones de un solo evento en los + dispositivos portátiles (izquierda) y los dispositivos con Wear (derecha).</p> + +<img style="margin-top:30px" +src="{@docRoot}images/android-5.0/notifications/expandedtext_combo.png" + alt="" width="700px" height;="284px" /> +<img style="margin-top:30px" +src="{@docRoot}images/android-5.0/notifications/stack_combo.png" + alt="" width="700px" height;="284px" /> +<img style="margin-top:30px" +src="{@docRoot}images/android-5.0/notifications/ExpandedImage.png" + alt="" width="311px" height;="450px" /> + +<h3 id="actions" style="clear:both; margin-top:40px">Acciones</h3> + +<p>Android es compatible con acciones opcionales que se muestran en la parte inferior +de la notificación. +A través de las acciones, los usuarios pueden administrar las tareas más comunes para una determinada +notificación desde el interior del panel de notificaciones, sin tener que abrir la +aplicación que la originó. +Esto acelera la interacción y, junto con la función deslizar para descartar, ayuda a los usuarios a enfocarse en las +notificaciones que les parecen importantes.</p> + + + <img src="{@docRoot}images/android-5.0/notifications/action_combo.png" alt="" width="700px" /> + + + +<p style="clear:both">Sea moderado con la cantidad de acciones que incluye en una +notificación. Mientras más +acciones incluya, mayor complejidad cognitiva generará. Limítese a +la menor cantidad posible +de acciones al incluir solo las acciones más importantes +y significativas.</p> + +<p>Las acciones recomendadas para las notificaciones son aquellas que:</p> + +<ul> + <li> Son fundamentales, frecuentes y típicas para el tipo de contenido que está +mostrando. + <li> Les permiten a los usuarios realizar las tareas rápidamente. +</ul> + +<p>Evite acciones que sean:</p> + +<ul> + <li> ambiguas; + <li> iguales que la acción predeterminada de la notificación (tales como "Leer" o +"Abrir"). +</ul> + + + +<p>Puede especificar un máximo de tres acciones, cada una de ellas formada por un icono +de la acción y un nombre. + Al agregarle acciones a un diseño básico simple, la notificación será expandible, +incluso si no + cuenta con un diseño expandido. Como las acciones solo se muestran en las notificaciones +expandidas + y, de lo contrario, se ocultan, asegúrese de que cualquier acción que el +usuario invoque desde + una notificación esté disponible también desde la aplicación +asociada.</p> + +<h2 style="clear:left">Notificación emergente</h2> +<div class="figure" style="width:311px"> + <img src="{@docRoot}images/android-5.0/notifications/hun-example.png" alt="" width="311px" /> + <p class="img-caption"> + Ejemplo de una notificación emergente (llamada telefónica entrante, alta prioridad) +que aparece en la parte superior de una + aplicación inmersiva + </p> +</div> + +<p>Cuando llega una notificación de alta prioridad (ver a la derecha), esta se presenta +a los usuarios +durante un período breve, con un diseño expandido que expone las posibles acciones.</p> +<p> Luego de este período, la notificación se retira hacia el +panel de notificaciones. Si la <a href="#correctly_set_and_manage_notification_priority">prioridad</a> de una notificación +se marca como Alta, Máxima o Pantalla completa, se obtiene una notificación emergente.</p> + +<p><b>Buenos ejemplos de notificaciones emergentes</b></p> + +<ul> + <li> Llamada telefónica entrante cuando se utiliza un dispositivo</li> + <li> Alarma cuando se utiliza un dispositivo</li> + <li> Nuevo mensaje SMS</li> + <li> Batería baja</li> +</ul> + +<h2 style="clear:both" id="guidelines">Pautas</h2> + + +<h3 id="MakeItPersonal">Personalización</h3> + +<p>En el caso de las notificaciones de los elementos que envía otra persona (como un mensaje o una +actualización de estado), utilice +{@link android.app.Notification.Builder#setLargeIcon setLargeIcon()} para incluir la imagen de esa persona. Además, adjunte información sobre +la persona en los metadatos de la notificación (consulte {@link android.app.Notification#EXTRA_PEOPLE}).</p> + +<p>El icono principal de su notificación seguirá estando visible, de modo que el usuario pueda asociarlo +con el icono +que se muestra en la barra de estado.</p> + + +<img src="{@docRoot}images/android-5.0/notifications/Triggered.png" alt="" width="311px" /> +<p style="margin-top:10px" class="img-caption"> + Notificación en la que se muestra la persona que la generó y el contenido que envió. +</p> + + +<h3 id="navigate_to_the_right_place">Navegación hacia el lugar correcto</h3> + +<p>Cuando el usuario toca el cuerpo de una notificación (fuera de los botones de acción +), esta se abre +en el lugar en el que el usuario puede visualizarla y utilizar los datos que se mencionan en la +notificación. En la mayoría de los casos, se tratará de la vista detallada de un solo elemento de datos como un mensaje, +pero también se podría tratar de una +vista resumida si la notificación está apilada. Si la aplicación dirige al +usuario a cualquier sitio que se encuentre debajo del nivel superior, incorpore la navegación en la pila de retroceso de la aplicación para que el +usuario pueda presionar el botón Back del sistema y regresar al nivel superior. Para obtener más información, consulte +<em>Navegación dentro de la aplicación a través de los widgets y las notificaciones de la pantalla de Inicio</em> en el patrón de +diseño <a href="{@docRoot}design/patterns/navigation.html#into-your-app">Navegación</a>.</p> + +<h3 id="correctly_set_and_manage_notification_priority">Configuración y administración +correctas de la prioridad +de las notificaciones</h3> + +<p>Android admite el uso de una marca de prioridad en las notificaciones. Esta marca +le permite influir en el lugar donde aparecerá la notificación, en relación con otras notificaciones, y +lo ayuda a asegurarse de +que los usuarios vean siempre primero las notificaciones más importantes. Cuando publica una notificación, puede elegir +entre los +siguientes niveles de prioridad:</p> +<table> + <tr> + <td class="tab0"> +<p><strong>Prioridad</strong></p> +</td> + <td class="tab0"> +<p><strong>Uso</strong></p> +</td> + </tr> + <tr> + <td class="tab1"> +<p><code>MAX</code></p> +</td> + <td class="tab1"> +<p>Utilícelo para las notificaciones críticas y urgentes en las que se le informa al usuario sobre una condición +que es +crítica en el tiempo o que se debe resolver antes de que el usuario continúe con una +tarea específica.</p> +</td> + </tr> + <tr> + <td class="tab1"> +<p><code>HIGH</code></p> +</td> + <td class="tab1"> +<p>Utilícelo, principalmente, para comunicaciones importantes, como eventos de mensajes o +chats con contenido que sea particularmente interesante para el usuario. +Las notificaciones de alta prioridad activan la pantalla de notificaciones emergentes.</p> +</td> + </tr> + <tr> + <td class="tab1"> +<p><code>DEFAULT</code></p> +</td> + <td class="tab1"> +<p>Utilícelo para todas las notificaciones que no pertenecen a ninguno de los otros tipos de prioridades que se describen aquí.</p> +</td> + </tr> + <tr> + <td class="tab1"> +<p><code>LOW</code></p> +</td> + <td class="tab1"> +<p>Utilícelo para las notificaciones que desea que el usuario reciba, pero +que son menos urgentes. Las notificaciones de baja prioridad tienden a aparecer en la parte inferior de la lista, +por lo que son ideales para +eventos como actualizaciones sociales públicas o indirectas: El usuario solicitó que se le notifiquen +estas +actualizaciones, pero estas notificaciones nunca tendrán prioridad sobre las comunicaciones +urgentes o directas.</p> +</td> + </tr> + <tr> + <td class="tab1"> +<p><code>MIN</code></p> +</td> + <td class="tab1"> +<p>Utilícelo para la información contextual o de segundo plano, como información sobre el clima o la +ubicación contextual. +Las notificaciones cuya prioridad es mínima no aparecen en la barra de estado. El usuario +las descubre al expandir el panel de notificaciones.</p> +</td> + </tr> +</table> + + +<h4 id="how_to_choose_an_appropriate_priority"><strong>Cómo elegir la +prioridad +adecuada</strong></h4> + +<p><code>DEFAULT</code>, <code>HIGH</code> y <code>MAX</code> son niveles de prioridad interruptiva, y se corre el riesgo de +interrumpir al usuario +en el medio de su actividad. Para evitar incomodar a los usuarios de su aplicación, reserve los niveles de prioridad interruptiva para +las notificaciones:</p> + +<ul> + <li> en las que participe otra persona;</li> + <li> en las que el tiempo sea importante;</li> + <li> que puedan modificar inmediatamente el comportamiento del usuario en el mundo real.</li> +</ul> + +<p>Las notificaciones que se configuran en <code>LOW</code> y <code>MIN</code> pueden seguir siendo +valiosas para el usuario: muchas, tal vez la mayoría, de las notificaciones simplemente no le piden al usuario que actúe de inmediato +ni llaman su atención mediante una vibración, pero poseen información que será valiosa para el +usuario +cuando este decida ver las notificaciones. Entre los criterios de las notificaciones con prioridad <code>LOW</code> y <code>MIN</code>, +se incluyen los siguientes:</p> + +<ul> + <li> No participan otras personas.</li> + <li> El tiempo no es importante.</li> + <li> Incluyen contenido que podría interesarle al usuario, pero que tal vez desee +buscarlo cuando lo necesite.</li> +</ul> + + + <img src="{@docRoot}images/android-5.0/notifications/notifications_pattern_priority.png" alt="" width="700" /> + + +<h3 style="clear:both" id="set_a_notification_category">Configuración de una +categoría de notificaciones</h3> + +<p>Si su notificación se puede clasificar dentro de alguna de las categorías predefinidas (consulte +a continuación), asígnela +según corresponda. Esta información se puede utilizar en determinados aspectos de la IU del sistema, como el panel de notificaciones (o cualquier +otro +agente de escucha de la notificación), para realizar una clasificación y filtrar las decisiones.</p> +<table> + <tr> + <td> +<p><code><a +href="/reference/android/app/Notification.html#CATEGORY_CALL">CATEGORY_CALL</a></code></p> +</td> + <td> +<p>Llamada entrante (voz o video) o una solicitud de comunicación +sincrónica similar</p> +</td> + </tr> + <tr> + <td> +<p><code><a +href="/reference/android/app/Notification.html#CATEGORY_MESSAGE">CATEGORY_MESSAGE</a></code></p> +</td> + <td> +<p>Mensaje entrante directo (SMS, mensaje instantáneo, etc.)</p> +</td> + </tr> + <tr> + <td> +<p><code><a +href="/reference/android/app/Notification.html#CATEGORY_EMAIL">CATEGORY_EMAIL</a></code></p> +</td> + <td> +<p>Mensaje en bloque asíncrono (correo electrónico)</p> +</td> + </tr> + <tr> + <td> +<p><code><a +href="/reference/android/app/Notification.html#CATEGORY_EVENT">CATEGORY_EVENT</a></code></p> +</td> + <td> +<p>Evento del calendario</p> +</td> + </tr> + <tr> + <td> +<p><code><a +href="/reference/android/app/Notification.html#CATEGORY_PROMO">CATEGORY_PROMO</a></code></p> +</td> + <td> +<p>Promoción o anuncio</p> +</td> + </tr> + <tr> + <td> +<p><code><a +href="/reference/android/app/Notification.html#CATEGORY_ALARM">CATEGORY_ALARM</a></code></p> +</td> + <td> +<p>Alarma o temporizador</p> +</td> + </tr> + <tr> + <td> +<p><code><a +href="/reference/android/app/Notification.html#CATEGORY_PROGRESS">CATEGORY_PROGRESS</a></code></p> +</td> + <td> +<p>Progreso de una operación en segundo plano de larga ejecución</p> +</td> + </tr> + <tr> + <td> +<p><code><a +href="/reference/android/app/Notification.html#CATEGORY_SOCIAL">CATEGORY_SOCIAL</a></code></p> +</td> + <td> +<p>Actualización de red social o uso compartido de datos</p> +</td> + </tr> + <tr> + <td> +<p><code><a +href="/reference/android/app/Notification.html#CATEGORY_ERROR">CATEGORY_ERROR</a></code></p> +</td> + <td> +<p>Error en una operación en segundo plano o un estado de autenticación</p> +</td> + </tr> + <tr> + <td> +<p><code><a +href="/reference/android/app/Notification.html#CATEGORY_TRANSPORT">CATEGORY_TRANSPORT</a></code></p> +</td> + <td> +<p>Control de transporte de medios para la reproducción</p> +</td> + </tr> + <tr> + <td> +<p><code><a +href="/reference/android/app/Notification.html#CATEGORY_SYSTEM">CATEGORY_SYSTEM</a></code></p> +</td> + <td> +<p>Actualización del estado del dispositivo o el sistema. Reservado para ser utilizado por el sistema</p> +</td> + </tr> + <tr> + <td> +<p><code><a +href="/reference/android/app/Notification.html#CATEGORY_SERVICE">CATEGORY_SERVICE</a></code></p> +</td> + <td> +<p>Indicación de ejecución de servicio en segundo plano</p> +</td> + </tr> + <tr> + <td> +<p><code><a +href="/reference/android/app/Notification.html#CATEGORY_RECOMMENDATION">CATEGORY_RECOMMENDATION</a></code></p> +</td> + <td> +<p>Una recomendación específica y oportuna para un solo evento. Por ejemplo, en una +aplicación de noticias tal vez se desee +recomendar una historia que se considere que el usuario deseará leer luego</p> +</td> + </tr> + <tr> + <td> +<p><code><a +href="/reference/android/app/Notification.html#CATEGORY_STATUS">CATEGORY_STATUS</a></code></p> +</td> + <td> +<p>Información constante sobre el estado contextual o del dispositivo</p> +</td> + </tr> +</table> + +<h3 id="summarize_your_notifications">Resumen de las notificaciones</h3> + +<p>Si una notificación de un determinado tipo ya está pendiente cuando su aplicación intenta enviar una nueva +notificación del mismo tipo, combínelas en una misma notificación resumida para la aplicación. No +cree un objeto nuevo.</p> + +<p>Las notificaciones resumidas incluirán una descripción resumida y le permitirán al usuario +conocer cuántas +notificaciones de un determinado tipo están pendientes.</p> + +<div class="col-6"> + +<p><strong>Lo que no debe hacer</strong></p> + <img src="{@docRoot}images/android-5.0/notifications/Summarise_Dont.png" alt="" width="311px" /> +</div> + +<div> +<p><strong>Lo que debe hacer</strong></p> + + <img src="{@docRoot}images/android-5.0/notifications/Summarise_Do.png" alt="" width="311px" /> +</div> + +<p style="clear:left; padding-top:30px; padding-bottom:20px">Puede proporcionar +información más detallada sobre cada una de las notificaciones que conforman un + resumen al utilizar el diseño resumido expandido. Este enfoque les permite a los usuarios tener +una idea más clara de las + notificaciones pendientes y determinar si están lo suficientemente interesados como para leer +los detalles en la + aplicación asociada.</p> +<div class="col-6"> + <img src="{@docRoot}images/android-5.0/notifications/Stack.png" style="margin-bottom:20px" alt="" width="311px" /> + <p class="img-caption"> + Notificación contraída y expandida que es un resumen (mediante el uso de <code>InboxStyle</code>) + </p> +</div> + +<h3 style="clear:both" id="make_notifications_optional">Uso de notificaciones +opcionales</h3> + +<p>Los usuarios deben tener siempre el control sobre las notificaciones. Permítale al usuario +deshabilitar las notificaciones +de su aplicación o cambiar las propiedades de las alertas, como el sonido de una alerta y si desea +utilizar la vibración, +mediante la incorporación de un elemento de configuración de notificaciones en las configuraciones de la aplicación.</p> + +<h3 id="use_distinct_icons">Uso de iconos diferentes</h3> +<p>Al mirar el área de notificaciones, el usuario debe poder diferenciar +los tipos de +notificaciones que están pendientes actualmente.</p> + +<div class="figure"> + <img src="{@docRoot}images/android-5.0/notifications/ProductIcons.png" alt="" width="420" /> +</div> + + <div><p><strong>Lo que debe hacer</strong></p> + <p>Mirar los iconos de notificaciones que ya se proporcionan en las aplicaciones de Android y crear +iconos de notificaciones para + su aplicación que tengan una apariencia bastante diferente.</p> + + <p><strong>Lo que debe hacer</strong></p> + <p>Utilizar el <a href="/design/style/iconography.html#notification">estilo de icono de notificación</a> + adecuado para los iconos pequeños y el +<a href="/design/style/iconography.html#action-bar">estilo +de icono de barra de acción</a> del diseño Material Light para los iconos + de acciones.</p> +<p ><strong>Lo que debe hacer</strong></p> +<p >Hacer que los iconos sean simples y evitar incluir una cantidad excesiva de detalles difíciles de +distinguir.</p> + + <div><p><strong>Lo que no debe hacer</strong></p> + <p>Colocar valores alfa adicionales (que se oscurezcan o aclaren) en los +iconos pequeños y los + iconos de acciones. Estos pueden tener bordes alisados, pero como en Android estos iconos se utilizan +como máscaras (es decir, solo se + utiliza el canal alfa), por lo general, la imagen se debe dibujar con +opacidad completa.</p> + +</div> +<p style="clear:both"><strong>Lo que no debe hacer</strong></p> + +<p>Utilizar colores para diferenciar su aplicación de las demás. Los iconos de las notificaciones simplemente +deben ser una imagen sobre un fondo blanco o transparente.</p> + + +<h3 id="pulse_the_notification_led_appropriately">Pulsación adecuada del +LED de notificaciones</h3> + +<p>Muchos dispositivos con Android incluyen un LED de notificaciones, que se utiliza para mantener al +usuario informado sobre los +eventos cuando la pantalla está apagada. Las notificaciones con un nivel de prioridad <code>MAX</code>, +<code>HIGH</code> o <code>DEFAULT</code> deben +hacer que se encienda el LED, mientras que las de menor prioridad (<code>LOW</code> y +<code>MIN</code>) no deben activar esta función.</p> + +<p>El control del usuario sobre las notificaciones debe extenderse al LED. Cuando se utilice +DEFAULT_LIGHTS, el +LED se iluminará en color blanco. Sus notificaciones no deberían utilizar un color +diferente, a menos que el +usuario lo haya personalizado explícitamente.</p> + +<h2 id="building_notifications_that_users_care_about">Creación de notificaciones +importantes para los usuarios</h2> + +<p>Para crear una aplicación que les guste a los usuarios, es importante diseñar las notificaciones +cuidadosamente. +Las notificaciones son la voz de su aplicación y ayudan a definir su +personalidad. Las notificaciones no deseadas +o que no son importantes pueden hacer que el usuario se moleste o no se sienta cómodo con la cantidad de +atención que le demanda la +aplicación, por eso debe utilizarlas de forma moderada.</p> + +<h3 id="when_to_display_a_notification">Cuándo se deben mostrar las notificaciones</h3> + +<p>Para crear una aplicación que los usuarios disfruten, es importante +reconocer que la atención +y el enfoque del usuario son recursos que se deben proteger. Aunque el sistema de notificaciones de Android +se diseñó +para minimizar el impacto de las notificaciones en la atención del usuario, +es +importante tener en cuenta que las notificaciones interrumpen el +flujo de tareas del usuario. +Cuando planifique sus notificaciones, pregúntese si son lo suficiente importantes como para +realizar una interrupción. Si no está seguro, permítale al usuario que elija las +notificaciones mediante la configuración de notificaciones de su aplicación o que ajuste +la marca de prioridad de las notificaciones en <code>LOW</code> o <code>MIN</code> para +evitar distraer al usuario cuando realiza +alguna otra tarea.</p> + + <img src="{@docRoot}images/android-5.0/notifications/TimeSensitive.png" alt="" width="311px" /> + <p style="margin-top:10px" class="img-caption"> + Ejemplos de notificaciones sujetas a limitación temporal + </p> + +<p>Aunque las aplicaciones más eficientes para el usuario solo proporcionan una respuesta cuando se la solicita, en algunos casos, +vale la pena que una aplicación interrumpa al usuario con una notificación no solicitada.</p> + +<p>Utilice las notificaciones principalmente para <strong>eventos sujetos a limitaciones temporales</strong>, en especial + si estos eventos sincrónicos <strong>involucran a otras personas</strong>. Por +ejemplo, un chat entrante + es una forma de comunicación sincrónica y en tiempo real: otro usuario +está esperando de forma activa su respuesta. Los eventos del calendario son otros buenos ejemplos de cuándo se debe utilizar una +notificación y llamar la atención del usuario, + ya que los eventos son inminentes y, generalmente, +involucran a otras personas.</p> + +<h3 style="clear:both" id="when_not_to_display_a_notification">Cuándo no se debe +mostrar una notificación</h3> + +<div class="figure" style="margin-top:60px"> + <img src="{@docRoot}images/android-5.0/notifications/AntiSample1.png" alt="" width="311px" /> +</div> + +<p>En muchos otros casos, no es apropiado enviar notificaciones:</p> + +<ul> + <li> Evite notificarle al usuario acerca de información que no le enviaron +específicamente a él o +información que no está verdaderamente sujeta a una limitación temporal. Por ejemplo, las actualizaciones asíncronas +e indirectas + que circulan por las redes sociales generalmente no justifican una interrupción en +tiempo real. En el caso de los usuarios + interesados en dichas notificaciones, permítales elegir.</li> + <li> No cree una notificación si la información nueva y relevante se muestra actualmente +en la pantalla. En su lugar, + utilice la IU de la aplicación para notificarle al usuario sobre la nueva información +directamente en contexto. + Por ejemplo, una aplicación de chat no debe crear notificaciones del sistema mientras +el usuario está chateando de forma activa con otro usuario.</li> + <li> No interrumpa al usuario para que ejecute operaciones técnicas de bajo nivel, como guardar +o sincronizar información, o actualizar una aplicación si dicha aplicación o el sistema pueden resolver el problema +sin la participación del usuario.</li> + <li> No interrumpa al usuario para informarle sobre un error si la +aplicación puede solucionar el error por sus propios medios, sin que el usuario +realice ninguna acción.</li> + <li> No cree notificaciones que no incluyan contenidos reales de notificación y que +simplemente promocionen + su aplicación. Una notificación debe proporcionar información nueva, útil y oportuna, y +no debe utilizarse + solo para lanzar una aplicación.</li> + <li> No cree notificaciones superfluas solo para mostrar su marca +a los usuarios. + Dichas notificaciones frustran y aíslan a su público. La +mejor forma de proporcionar + pequeñas cantidades de información actualizada y de mantener a los usuarios interesados +en su + aplicación es desarrollar un widget que puedan colocar en la +pantalla de inicio, si así lo desean.</li> +</ul> + +<h2 style="clear:left" id="interacting_with_notifications">Interacción con +las notificaciones</h2> + +<p>Las notificaciones se indican mediante iconos en la barra de estado, y se puede acceder a ellas +al abrir el +panel lateral de notificaciones.</p> + +<p>Al tocar una notificación, se abre la aplicación asociada con el contenido detallado +que coincide con el de la notificación. +Si dicha notificación se desplaza hacia la izquierda o la derecha, esta se eliminará del panel lateral.</p> + +<h3 id="ongoing_notifications">Notificaciones constantes</h3> +<div class="figure" style="width:311px"> + <img src="{@docRoot}images/android-5.0/notifications/MusicPlayback.png" alt="" width="311px" /> + <p class="img-caption"> + Notificaciones constantes relacionadas con la reproducción de música + </p> +</div> +<p>Mediante las notificaciones constantes, se mantiene a los usuarios informados sobre un proceso en curso en +segundo plano. +Por ejemplo, los reproductores de música anuncian la pista que se está reproduciendo actualmente en el +sistema de notificaciones y +siguen haciéndolo hasta que el usuario detiene la reproducción. Mediante las notificaciones constantes también se le pueden +mostrar al usuario +comentarios sobre tareas más extensas, como descargar un archivo o codificar un video. Los usuarios no podrán +eliminar las notificaciones constantes del panel lateral de notificaciones.</p> + +<h3 id="ongoing_notifications">Reproducción de medios</h3> +<p>En Android 5.0, la pantalla de bloqueo no muestra los controles de transporte para la clase +{@link android.media.RemoteControlClient} obsoleta. Sin embargo, <em>sí</em> muestra las notificaciones, de modo que las notificaciones de reproducción de cada +aplicación ahora son la forma principal +en la que los usuarios controlan la reproducción desde el estado bloqueado. A través de este comportamiento, se le otorga más control +a la aplicación sobre los +botones que se deben mostrar, y la forma en que debe mostrarlos, al mismo tiempo que se proporciona +al usuario una experiencia coherente, independientemente de si la pantalla está bloqueada o no.</p> + +<h3 style="clear:both" +id="dialogs_and_toasts_are_for_feedback_not_notification">Diálogos +y avisos</h3> + +<p>Su aplicación no debe crear un diálogo o un aviso si actualmente no se muestra en la +pantalla. Los diálogos o los avisos se deben + mostrar únicamente como una respuesta inmediata a una acción que realiza el usuario +dentro de su aplicación. +Para obtener más información sobre cómo utilizar los diálogos y los avisos, consulte +<a href="/design/patterns/confirming-acknowledging.html">Confirmación y reconocimiento</a>.</p> + +<h3>Orden y clasificación</h3> + +<p>Las notificaciones son noticias que, como tales, se muestran, básicamente, en +orden cronológico inverso, prestando +especial atención a la +<a href="#correctly_set_and_manage_notification_priority">prioridad</a> de la notificación especificada en la aplicación.</p> + +<p>Las notificaciones son una parte clave de la pantalla de bloqueo y se muestran de forma prominente +cada vez +que se enciende la pantalla del dispositivo. El espacio en la pantalla de bloqueo es reducido, por lo que +es sumamente importante +que se identifiquen las notificaciones más urgentes o relevantes. Por este +motivo, Android cuenta +con un algoritmo de clasificación más sofisticado para las notificaciones, que tiene en cuenta lo siguiente:</p> + +<ul> + <li> La marca de tiempo y la prioridad especificada en la aplicación.</li> + <li> Si la notificación interrumpió al usuario recientemente con un sonido o una +vibración. (Es decir, + si el teléfono emitió un sonido y el usuario desea saber "¿Qué +pasó?", en la pantalla de bloqueo se debe + proporcionar una respuesta a simple vista).</li> + <li> Todas aquellas personas involucradas en la notificación mediante{@link android.app.Notification#EXTRA_PEOPLE} + y, especialmente, si son contactos preferidos.</li> +</ul> + +<p>Para aprovechar aún más esta función de clasificación, enfóquese en la +experiencia del usuario que desea +crear, en lugar de centrarse en algún punto importante de la lista.</p> + + <img src="{@docRoot}images/android-5.0/notifications/AntiSample3.png" alt="" width="700px" /> + + <p class="img-caption" style="margin-top:10px">Las notificaciones de Gmail +poseen una prioridad predeterminada, por lo que + normalmente clasifican los mensajes de una aplicación de mensajería instantánea como Hangouts, pero +realizan + un cambio de prioridad temporal cuando ingresan nuevos mensajes. + </p> + + +<h3>En la pantalla de bloqueo</h3> + +<p>Como las notificaciones son visibles en la pantalla de bloqueo, la privacidad del usuario es un aspecto +especialmente +importante. Por lo general, las notificaciones contienen información confidencial y +no necesariamente deben ser visibles +para cualquier persona que agarre el dispositivo y encienda la pantalla.</p> + +<ul> + <li> En el caso de los dispositivos que posean una pantalla de bloqueo segura (PIN, patrón o contraseña), la interface está formada por + partes públicas y privadas. La interfaz pública se puede mostrar en una pantalla de bloqueo segura y, + por ende, cualquier persona puede verla. La interfaz privada es el mundo detrás de esa pantalla de bloqueo y + solo se revela cuando el usuario se registra en el dispositivo.</li> +</ul> + +<h3>Control del usuario sobre la información que se muestra en la pantalla de bloqueo segura</h3> +<div class="figure" style="width:311px"> + <img src="{@docRoot}images/android-5.0/notifications/LockScreen@2x.png" srcset="{@docRoot}images/android-5.0/notifications/LockScreen.png 1x" alt="" width="311px" /> + <p class="img-caption"> + Notificaciones en la pantalla de bloqueo, en la que el contenido se revela luego de que el usuario desbloquea el dispositivo + </p> +</div> + +<p>Cuando se configura una pantalla de bloqueo segura, el usuario puede decidir ocultar los +detalles confidenciales de dicha pantalla. En este caso, la IU del sistema +analiza el <em>nivel de visibilidad</em> de la notificación para decidir +qué información se puede mostrar de forma segura.</p> +<p> Para controlar el nivel de visibilidad, realice una llamada a +<code><a +href="/reference/android/app/Notification.Builder.html#setVisibility(int)">Notification.Builder.setVisibility()</a></code> + y especifique uno de los siguientes valores:</p> + +<ul> + <li><code><a +href="/reference/android/app/Notification.html#VISIBILITY_PUBLIC">VISIBILITY_PUBLIC</a></code>. +Se muestra todo el contenido de la notificación. + Esta es la opción predeterminada del sistema si no se especificó el grado de visibilidad.</li> + <li><code><a +href="/reference/android/app/Notification.html#VISIBILITY_PRIVATE">VISIBILITY_PRIVATE</a></code>. +En la pantalla de bloqueo se muestra la información básica sobre la existencia de esta notificación, incluido +el icono y el nombre de la aplicación a través de la cual se publicó. No se muestra el resto de los detalles de la notificación. +A continuación, especificamos algunos puntos que se deben tener en cuenta: + <ul> + <li> Si desea proporcionar una versión pública diferente de su notificación +para que el sistema la muestre en una pantalla de bloqueo segura, suministre un +objeto de notificación de reemplazo en el campo <code><a +href="/reference/android/app/Notification.html#publicVersion">Notification.publicVersion</a></code> +. + <li> Mediante esta configuración, su aplicación puede crear una versión resumida del +contenido que sigue siendo útil, pero que no revela información personal. Considere el ejemplo de una +aplicación de SMS cuyas notificaciones incluyen el texto del SMS, el nombre del remitente y el icono del contacto. +Esta notificación debe ser <code>VISIBILITY_PRIVATE</code>, pero <code>publicVersion</code> podría +seguir conteniendo información útil como "3 mensajes nuevos", sin que se muestren otros detalles +de identificación. + </ul> + </li> + <li><code><a +href="/reference/android/app/Notification.html#VISIBILITY_SECRET">Notification.VISIBILITY_SECRET</a></code>. Se muestra solo la menor cantidad de información posible; se excluye incluso +el icono de la notificación.</li> +</ul> +<h2 style="clear:both" id="notifications_on_android_wear">Notificaciones en +Android Wear</h2> + +<p>Las notificaciones y sus <em>acciones</em> se conectan de forma predeterminada con los dispositivos con Wear. +Los desarrolladores pueden controlar qué notificaciones se conectan desde el +teléfono hacia el reloj +y viceversa. Los desarrolladores también pueden controlar qué acciones se conectan. Si +en su aplicación se incluyen +acciones que no se pueden realizar con una sola pulsación, oculte dichas acciones +en su notificación para Wear +o considere anclarlas a una aplicación de Wear. De este modo, el usuario podrá +finalizar con la acción desde el +reloj.</p> + +<h4>Conexión entre notificaciones y acciones</h4> + +<p>Mediante un dispositivo conectado, como un teléfono, es posible conectar las notificaciones con un dispositivo con Wear, para que las +notificaciones se muestren allí. De modo similar, también es posible conectar acciones para que el usuario pueda ejecutarlas +directamente desde las notificaciones en los dispositivos con Wear.</p> + +<p><strong>Conexión</strong></p> + +<ul> + <li> Nuevos mensajes instantáneos</li> + <li> Acciones de una sola pulsación como Hacer +1, Me gusta o Favorito</li> +</ul> + +<img src="{@docRoot}images/android-5.0/notifications/WearBasic.png" width="156px" height="156px" alt="" /> + +<p><strong>Sin conexión</strong></p> + +<ul> + <li> Notificaciones de podcasts que llegaron recientemente</li> + <li> Acciones que se asignan a funciones que no se pueden ejecutar desde el reloj</li> +</ul> + + + +<p><h4>Acciones únicas diseñadas para Wear</h4></p> + +<p>Existen algunas acciones que solo puede realizar en Wear. Entre estas, se incluyen las siguientes:</p> + +<ul> + <li> listas rápidas de respuestas predeterminadas como "Vuelvo enseguida";</li> + <li> acciones que se abren desde el teléfono;</li> + <li> un "Comentario" o una acción de "Respuesta" que activa la pantalla de entrada de voz;</li> + <li> acciones que lanzan aplicaciones específicas de Wear.</li> +</ul> + +<img src="{@docRoot}images/android-5.0/notifications/ReplyAction.png" width="156px" height="156px" alt="" /> |