El impresionante proyecto WanAndroid se basa en Material Design + MVP + Rxjava2 + Retrofit + Dagger2 + GreenDao + Glide
Esta es una aplicación de aprendizaje de tecnología que te hará sentir muy bien. La tecnología utilizada básicamente cubre los marcos tecnológicos convencionales comúnmente utilizados en el desarrollo actual de Android. El contenido de lectura es principalmente para amigos que desean convertirse en expertos en el campo del desarrollo de Android. Además, estoy trabajando en un nuevo plan avanzado de Android, dedicado a convertirme en un mejor desarrollador de Android. Los amigos que estén interesados pueden consultarlo ~.
Android Studio indica que faltan las clases generadas por Dagger. Puede compilar el proyecto directamente y Dagger2 lo generará automáticamente.
Todavía hay algunas imperfecciones en este proyecto. Si encuentra algún error, no dude en enviarlo por correo electrónico ([email protected]) o PR.
Todas las API del proyecto provienen del sitio web de WanAndroid. Son exclusivamente para aprendizaje compartido y no pueden usarse con fines comerciales. ! Si tiene alguna pregunta o sugerencia, comuníquese con [email protected]
El código del proyecto hace todo lo posible para seguir las especificaciones de desarrollo de Alibaba Java y las especificaciones de desarrollo de Alibaba Android, y tiene buenos comentarios.
Utilice Rxjava2 combinado con Retrofit2 para realizar solicitudes de red.
Utilice operadores Rxjava2 para convertir, retrasar, filtrar y otras operaciones en el flujo de eventos. Utilice el operador Compose en combinación con la clase de herramienta RxUtils para simplificar la cantidad de códigos para llamadas de cambio de subprocesos.
Utilice Dagger2 combinado con Dagger.Android para inyectar el modelo en el presentador y el presentador en la vista sin acoplamiento, implementando el patrón MVP de manera más eficiente.
BasePresenter se utiliza para integrar el ciclo de vida de las suscripciones a flujos de eventos.
Utilice la barra de herramientas de la colección Behavior en Material Design para implementar el efecto especial responsivo "arriba y abajo".
En muchos lugares se utilizan botones flotantes que se deslizan hacia la parte superior para mejorar la comodidad de lectura.
Utilice la rica animación de actualización de SmartRefreshLayout para elevar la belleza del proyecto a un nuevo nivel.
Tencent Bugly se utiliza para corregir errores y CI en el proyecto.
En muchos lugares del proyecto se utilizan animaciones deslumbrantes y efectos especiales.
Pruebas unitarias de alta cobertura y algunas pruebas de UI.
Clona este proyecto para ver más. . .
Ver impresionante análisis de fuentes de tercera biblioteca
1. Reemplace globalmente el campo esquema de la URL de solicitud con https
2. Resuelve los errores del problema.
1. Se agregó una nueva columna de cuenta oficial para admitir la búsqueda dentro de la cuenta oficial.
2. Resolver errores en Bugly
1. Adaptarse a la versión de Android O
2. Resolver errores en Bugly
1. Se agregaron pruebas unitarias de la capa Presentador y pruebas automatizadas de la interfaz de usuario de algunas capas de Vista.
2. Resuelva el error que provoca que el estado de inicio de sesión deje de ser válido después de un período de tiempo.
3. Llevar a cabo una refactorización adecuada a pequeña escala.
4. Resuelva el error de compatibilidad de Bugly
1. Agregar daga.android
2. Utilice config.gradle para administrar de manera uniforme las dependencias de gradle
3. Encapsular el procesamiento de suscripción de RxBinding
4. Agregar procesamiento de adaptación de elementos compartidos
5. Utilice Compose para agregar procesamiento unificado de resultados de devolución
6. Agregue memoria Glide, bitmapPool, configuración diskCache
7. Optimice la lógica de visualización de la página de error de carga.
8. Optimice la interfaz de registro.
9. Optimice el efecto de visualización de la barra de estado inmersiva.
10.Actualice la versión de Gradle a 3.0.1
1. Agregar módulo de configuración
2. Separar las interfaces comunes de los sitios web
3. Agregar etiquetas múltiples de artículos
4. Embellece el menú de la interfaz de detalles.
5. Agregar animación de salto de ActivityOption
6. Resuelva más del 90% de las pérdidas de memoria.
1. Agregue la administración de suscripciones RxBus para resolver el problema de pérdida de memoria de RxBus.
2. Resuelva el problema de que a veces no se puede cargar Webview.
3. Agregue RxPermission para manejar problemas de permisos de Android 6.0
4. La clase base de respuesta base es genérica, lo que reduce una gran cantidad de código de entidad
5. Agregar página de detalles de navegación de clasificación de conocimientos
6. Se agregaron y eliminaron registros de búsqueda en la página de búsqueda y la interfaz de usuario es más hermosa.
7. Embellecimiento general de la interfaz de usuario del proyecto.
1. Racionalizar la estructura de subcontratación del proyecto
2. Optimizar el módulo de búsqueda
3. Agregar inicio de sesión automático
4. Agregue el enlace inteligente TabLayout RecyclerView
5. Agregue una barra de estado inmersiva
6. Optimice el estilo del menú del artículo detallado.
7. Embellecimiento general de la interfaz de usuario del proyecto.
1.Envíe la primera versión de Awesome WanAndroid.
API WanAndroid proporcionada por Hongyang
GeekNews proporciona las ideas arquitectónicas de Dagger2 y MVP
Ideas de implementación de efectos especiales de MD proporcionadas por Toutiao
Ideas de implementación para botones flotantes deslizantes inteligentes proporcionadas por diycode
Ideas para implementar efectos especiales de cambio de interfaz de búsqueda proporcionadas por Eyepetizer-in-Kotlin
Además, también mencioné muchos proyectos de personas destacadas en el país y en el extranjero. ¡Gracias por el código abierto!
Petal proporciona un hermoso diseño de interfaz de usuario, gracias Petal
iconfont El gran recurso de iconos de Alibaba abierto al mundo exterior
Rxjava
RxAndroid
Enlace Rx
Retroadaptación
OkHTTP
Gson
Planeo
Daga2
cuchillo de mantequilla
verdedao
Diseño de actualización inteligente
Lottie-android
Hoy en día, la industria de Android se ha saturado gradualmente de talentos, pero los talentos senior todavía son escasos. Lo que a menudo encontramos es que solo hay 2 o 3 candidatos adecuados de cada 100 currículums, y la mayoría de ellos no están cansados de los negocios. se tomaron el tiempo para estudiar mucho, o no sabían qué aprender para mejorar sus habilidades. Para los desarrolladores de Android, es muy importante establecer un marco de conocimiento completo de Android lo antes posible, comprender los puntos de conocimiento de prueba comunes que aparecen con frecuencia en los principales fabricantes y dominar las habilidades de entrevista.
El año pasado, para ingresar a una fábrica de primer nivel para hacer cosas más desafiantes y obtener un salario más alto, me preparé con medio año de anticipación y recopilé una serie de preguntas de entrevista sistemáticas y de alta calidad que "afilaron mi espada durante dos años " . Durante medio año, he estado realizando entrevistas continuamente, y he entrevistado en total Después de cada entrevista en veinte o treinta empresas, resumí sistemáticamente las preguntas de la entrevista correspondientes y las respuestas detalladas, y las actualicé en mis proyectos de entrevista. Ahora, en cada módulo, se han compilado cuidadosamente las preguntas frecuentes sobre frecuencia ultraalta y alta frecuencia. . Puntos de conocimiento.
El año pasado, optimicé gradualmente el contenido original y agregué mucho contenido nuevo durante mi revisión de entrevistas prácticas con grandes empresas. Se puede decir que es un resumen de la esencia de las entrevistas en empresas de Internet de primer nivel. Al mismo tiempo, también incluirá contenido sobre cómo redactar un currículum y habilidades para entrevistas. Puede ayudarlo a ahorrar tiempo y esfuerzo en la preparación. para entrevistas y reducir en gran medida la dificultad de encontrar un buen trabajo.
Este proyecto de entrevista es diferente del proyecto de entrevista Awesome-Android-Interview en mi Github: https://github.com/JsonChao/Awesome-Android-Interview. Awesome-Android-Interview se suspendió hace 2 años (en la actualización de octubre de 2020). , el contenido está un poco desactualizado, hay muchos puntos que no están expresados con rigor y el contenido general de oro es bajo. El banco de preguntas de la entrevista que quiero compartir hoy es una pregunta de entrevista sistemática y de alta calidad que he resumido, refinado y acumulado continuamente durante los últimos dos años. Muchas de las preguntas centrales que contiene se han corregido y corregido repetidamente bajo presión. de entrevistas. Sublimación, contenido de oro extremadamente alto.
Antes de compartir, una cosa a tener en cuenta es que no debes filtrar la información. Si lo piensas detenidamente, entenderás:
1. Si está expuesto y las personas que lo entienden lo entienden más rápido que usted, ingresan antes a una gran fábrica y obtienen un salario alto, sus posibilidades de ingresar a una gran fábrica serán menores. Después de todo, hay un número limitado de buenas empresas. ahora, y cada zanahoria es un peligro.
2. La versión simple del banco de preguntas de la entrevista Awesome-Android-Interview que compartí públicamente hace dos años todavía se utiliza como material de drenaje en varias instituciones de capacitación, lo que ha aumentado la involución actual de Android. .
Así que esto hay que recordarlo.
Cómo obtenerlo: Escanee el código QR a continuación.
Ésta es una propuesta que he estado investigando durante los últimos siete años. En primer lugar, estaba investigando por mi cuenta, porque vengo de un pueblo pequeño y me establecí en Shenzhen a través de continuos contraataques. Cuanto más común es una persona, más paciencia necesita para realizar mejoras sistemáticas e integrales. En este sentido, tengo una experiencia práctica y una metodología muy ricas . Por lo tanto, comencé la comunidad de crecimiento "JsonChao" con la esperanza de completar una transformación sistemática con usted.
Se abrió mi cuenta pública JsonChao
, que se centra en la construcción de un sistema de conocimiento necesario para el futuro desarrollo de Android. Le enviaremos artículos de alta calidad todos los días hábiles para que pueda aumentar sus conocimientos todos los días. Si desea obtener los últimos artículos y actualizaciones lo antes posible, escanee y síganos ~
Copyright 2018 JsonChao
Licenciado bajo la Licencia Apache, Versión 2.0 (la "Licencia"); no puede utilizar este archivo excepto de conformidad con la Licencia. Puede obtener una copia de la Licencia en.
http://www.apache.org/licenses/LICENSE-2.0
A menos que lo exija la ley aplicable o se acuerde por escrito, el software distribuido bajo la Licencia se distribuye "TAL CUAL", SIN GARANTÍAS NI CONDICIONES DE NINGÚN TIPO, ya sean expresas o implícitas. Consulte la Licencia para conocer el idioma específico que rige los permisos y limitaciones. bajo la Licencia.