Android AppCompat-v21 vs Material puro
Por lo tanto, la documentación y los ejemplos son pocos y escasos en la actualidad, con más añadidos, para las aplicaciones basadas en materiales de Android.
He leído toda la documentación hasta la fecha, pero tengo una pregunta más general que he escuchado de mucha gente:
- Cómo utilizar muestras de color de Android
- Lollipop: botón desactivado -> ¿qué estilo?
- Cómo cambiar los iconos de los iconos del menú de navegación y desbordamiento de la barra de herramientas (appcompat v7)?
- Cómo cambiar el color de la barra de herramientas y los colores de la barra de estado de acuerdo con el color de la imagen en el diseño de material android?
- Lollipop Barra de progreso Tinción
- ¿Deben aplicaciones inferiores a 5.0 conformes a estilos Holo-istic, y 5.0 hacen uso de Material?
o
- ¿Deberían las aplicaciones usar AppCompat para hacer tanto del material del sistema como sea posible, y si es así, qué efectos negativos tiene esto en 5.0 y dispositivos anteriores?
Mi mente desarrollador ocd preferiría tener la forma más pura de material como sea posible, sin embargo, con la barra de herramientas y otros factores importantes que parece tener más sentido para utilizar AppCompat y revisar la aplicación entera 4.0 también.
Para aquellos que buscan aquí son algunos de los documentos que he leído sobre esto:
Http://antonioleiva.com/material-design-everywhere/
Https://chris.banes.me/2014/10/17/appcompat-v21/
Http://developer.android.com/training/material/theme.html
Http://developer.android.com/training/material/compatibility.html
Http://android-developers.blogspot.com/2014/10/implementing-material-design-in-your.html
- ¿Cuál es la diferencia entre la barra de acción y la recién introducida barra de herramientas?
- ¿Por qué GoogleMaterial.Icon no tiene el icono de cierre de sesión en la biblioteca de Android?
- ¿Cómo crear una paleta personalizada con color personalizado para la aplicación Material Design?
- Crear Revelación Circular para Dispositivos Pre-Lollipop
- Cómo implementar la elevación Material-design para Pre-lollipop
- No hay efecto de ondulación en el tacto en la vista de reciclaje
- Cómo crear una interfaz de usuario como la aplicación Inbox de Google en Android
- Android Spinner Reveal Animation Diseño de materiales
¿Deberían las aplicaciones usar AppCompat para hacer tanto del material del sistema como sea posible, y si es así, qué efectos negativos tiene esto en 5.0 y dispositivos anteriores?
Puede utilizar AppCompat mientras sigue soportando material puro en Lollipop a través de recursos alternativos. Así que en realidad no tienes que elegir apoyar uno u otro. La razón por la que Google gastó tanto tiempo en el desarrollo de AppCompat es para que los desarrolladores pudieran adoptar el diseño de materiales y seguir soportando dispositivos heredados.
Mi ocd desarrollador mente preferiría tener la forma más pura de material como sea posible
Esto es realmente un poco peligroso. Por ejemplo, si desea utilizar ondulaciones / otras animaciones en dispositivos pre 5.0 que carezcan de RenderThread, puede afectar el rendimiento de los dispositivos sin un hilo de animación dedicado.
Lo que realmente se reduce a es que voy a ser capaz de dar a mis usuarios la misma experiencia increíble con AppCompat como voy a utilizar los temas nativos. Google ha hecho un trabajo fenomenal con AppCompat-v21 y las otras bibliotecas de soporte para permitir un diseño Material-esque en dispositivos pre 5.0. Así que la respuesta es sí, el uso de AppCompat para dar a sus usuarios una experiencia unificada y estable arraigada en el diseño del material.
Todo depende de usted.
Algunos desarrolladores pueden encontrar más fácil desarrollar sin usar appcompat y optar por hacer Holo para pre-21 y material para 21+. Muchos desarrolladores quieren que su aplicación aparezca (en su mayoría) consistente en todos los dispositivos y elija utilizar appcompat para Material en pre-21.
- Cómo desemparejar dispositivo bluetooth con android 2.1 sdk
- Cómo omitir o evitar la opción de "volver a tomar y revisar" después de capturar la foto de la cámara mediante ACTION_IMAGE_CAPTURE