Initial commit
This commit is contained in:
220
README.md
Executable file
220
README.md
Executable file
@@ -0,0 +1,220 @@
|
||||
# Recordatorios
|
||||
|
||||
App Android de notas y recordatorios con Material 3 Dynamic Colors (Monet).
|
||||
|
||||
## Funcionalidades
|
||||
|
||||
- **Notas** con título y contenido multilínea
|
||||
- **Recordatorios** con fecha y hora exacta (AlarmManager)
|
||||
- **Recurrencia**: diaria, semanal, mensual, anual
|
||||
- **Notificaciones** push al cumplirse la fecha, incluso con la app cerrada
|
||||
- **Tabs**: Hoy (tareas del día), Pendientes (futuros), Eliminados (papelera)
|
||||
- **Check**: completa una nota y la envía a Eliminados; si es recurrente, adelanta al próximo período
|
||||
- **Buscador** por título y contenido en tiempo real
|
||||
- **Papelera** con restauración y borrado permanente
|
||||
|
||||
## Requisitos
|
||||
|
||||
- Android Studio Hedgehog (2023.1.1) o superior
|
||||
- JDK 17
|
||||
- Gradle 8.0
|
||||
- compileSdk 34, minSdk 26
|
||||
|
||||
## Cómo ejecutar
|
||||
|
||||
```bash
|
||||
git clone <repo>
|
||||
cd Recordatorios
|
||||
./gradlew assembleDebug
|
||||
```
|
||||
|
||||
El APK se genera en `app/build/outputs/apk/debug/app-debug.apk`.
|
||||
|
||||
Si el SDK no está en `~/Android/Sdk`, crear `local.properties`:
|
||||
|
||||
```
|
||||
sdk.dir=/ruta/al/Android/Sdk
|
||||
```
|
||||
|
||||
## Estructura del proyecto
|
||||
|
||||
```
|
||||
app/src/main/java/com/recordatorios/app/
|
||||
├── MainActivity.kt # Actividad principal, maneja tabs, editor, filtros
|
||||
├── Note.kt # Modelo de datos (data class)
|
||||
├── NotesManager.kt # Persistencia con SharedPreferences + Gson
|
||||
├── NoteAdapter.kt # RecyclerView adapter con expand/colapsar
|
||||
├── ReminderReceiver.kt # BroadcastReceiver para notificaciones + recurrencia
|
||||
└── ReminderScheduler.kt # AlarmManager (setExactAndAllowWhileIdle)
|
||||
|
||||
app/src/main/res/
|
||||
├── layout/
|
||||
│ ├── activity_main.xml # Toolbar, tabs, buscador, RecyclerView, FAB
|
||||
│ ├── item_note.xml # Card con expand, check, fecha, acciones
|
||||
│ └── dialog_note_editor.xml # Editor: título, contenido, recordatorio, recurrencia
|
||||
├── drawable/ # Iconos vectoriales (pencil, trash, sun, clock, bell, check)
|
||||
└── values/
|
||||
├── themes.xml # Theme.Material3.DynamicColors.DayNight + NoActionBar
|
||||
├── colors.xml
|
||||
└── strings.xml # Español
|
||||
```
|
||||
|
||||
## Flujo de desarrollo
|
||||
|
||||
1. **Modelo** → modificar `Note.kt` (agregar/quitar campos)
|
||||
2. **Persistencia** → `NotesManager.kt` (SharedPreferences + Gson)
|
||||
3. **UI** → layout XML + binding en `MainActivity.kt`
|
||||
4. **Adapter** → `NoteAdapter.kt` para cambios en la lista
|
||||
5. **Recordatorios** → `ReminderScheduler.kt` + `ReminderReceiver.kt`
|
||||
6. **Compilar** → `./gradlew assembleDebug`
|
||||
|
||||
Si se agrega un campo a `Note.kt`, Gson lo serializa automáticamente. No hay migraciones de base de datos.
|
||||
|
||||
## Estilo
|
||||
|
||||
- Tema: `Theme.Material3.DynamicColors.DayNight` (colores dinámicos del wallpaper)
|
||||
- Cards: `MaterialCardView`, 12dp radius, 2dp elevation
|
||||
- TextFields: `OutlinedBox`
|
||||
- Tabs con iconos vectoriales
|
||||
- Sin ActionBar nativa — solo Toolbar personalizada
|
||||
|
||||
---
|
||||
|
||||
## Guía de Uso
|
||||
|
||||
### Introducción
|
||||
|
||||
Recordatorios es una aplicación Android para gestionar notas y recordatorios con un diseño moderno usando Material 3 y colores dinámicos.
|
||||
|
||||
### Pestañas
|
||||
|
||||
#### ☀️ Hoy
|
||||
Muestra los recordatorios programados para el día actual y los que ya vencieron.
|
||||
|
||||
- **Tareas del día**: Recordatorios con fecha de hoy
|
||||
- **Vencidos**: Recordatorios que ya pasaron su fecha
|
||||
- Las notas se agrupan en secciones para fácil identificación
|
||||
|
||||
#### 🕐 Pendientes
|
||||
Muestra los recordatorios futuros, aquellos programados para fechas posteriores a hoy.
|
||||
|
||||
- Solo muestra recordatorios que aún no han llegado
|
||||
- Ordenados cronológicamente
|
||||
|
||||
#### 📅 Calendario
|
||||
Vista de calendario mensual con indicadores visuales.
|
||||
|
||||
- **Puntos de color**: Indican recordatorios en ese día
|
||||
- **Tap simple**: Muestra los recordatorios del día seleccionado
|
||||
- **Triple tap**: Crea un nuevo recordatorio para esa fecha
|
||||
- **Swipe horizontal**: Cambia entre meses
|
||||
- **Lista inferior**: Muestra todos los recordatorios del mes actual
|
||||
|
||||
#### 🗑️ Basurero
|
||||
Papelera donde van las notas completadas o eliminadas.
|
||||
|
||||
- **Restaurar**: Devuelve la nota a la lista principal
|
||||
- **Eliminar permanentemente**: Borra la nota definitivamente
|
||||
- Las notas recurrentes completadas adelantan al próximo período
|
||||
|
||||
#### ⚙️ Configuración
|
||||
Ajustes de la aplicación.
|
||||
|
||||
### Funcionalidades Principales
|
||||
|
||||
#### Crear una Nota
|
||||
1. Presiona el botón **+** en la esquina inferior derecha
|
||||
2. Escribe un título y/o contenido
|
||||
3. Activa el switch de recordatorio si deseas una notificación
|
||||
4. Selecciona fecha y hora
|
||||
5. Elige la recurrencia (diaria, semanal, mensual, anual)
|
||||
6. Selecciona una categoría (opcional)
|
||||
7. Agrega una foto (opcional)
|
||||
8. Presiona **Guardar**
|
||||
|
||||
#### Nota por Voz
|
||||
1. Presiona el botón de **micrófono** junto al botón +
|
||||
2. Di tu recordatorio
|
||||
3. La app parseará automáticamente lo dicho
|
||||
|
||||
#### Editar una Nota
|
||||
1. Expande la nota presionando la flecha ▼
|
||||
2. Presiona **Editar**
|
||||
3. Modifica los campos necesarios
|
||||
4. Presiona **Guardar**
|
||||
|
||||
#### Completar una Nota
|
||||
- Presiona el botón de **check** ✓ en la card
|
||||
- La nota se mueve al basurero
|
||||
- Si es recurrente, se programa automáticamente para el próximo período
|
||||
|
||||
#### Eliminar una Nota
|
||||
1. Expande la nota
|
||||
2. Presiona **Eliminar**
|
||||
3. Confirma la eliminación
|
||||
4. La nota va al basurero
|
||||
|
||||
#### Buscar Notas
|
||||
- Usa el campo de búsqueda en la parte superior
|
||||
- Busca por título o contenido en tiempo real
|
||||
|
||||
#### Filtrar por Categoría
|
||||
- En la pestaña de Pendientes, selecciona las categorías deseadas
|
||||
- Los filtros se guardan automáticamente
|
||||
|
||||
### Categorías
|
||||
|
||||
#### Crear Categoría
|
||||
1. En el editor de notas, presiona **Administrar categorías**
|
||||
2. Presiona **Agregar categoría**
|
||||
3. Escribe un nombre
|
||||
4. Selecciona un color
|
||||
5. Presiona **Guardar**
|
||||
|
||||
#### Editar/Eliminar Categoría
|
||||
- En el administrador de categorías, usa los botones de lápiz o basura
|
||||
|
||||
### Configuración
|
||||
|
||||
#### Biometría
|
||||
- Activa el desbloqueo con huella dactilar o reconocimiento facial
|
||||
- Solo se solicita una vez al abrir la app
|
||||
|
||||
#### Tema
|
||||
- **Sistema**: Sigue el tema del dispositivo
|
||||
- **Claro**: Siempre tema claro
|
||||
- **Oscuro**: Siempre tema oscuro
|
||||
|
||||
#### Fondo Personalizado
|
||||
- Selecciona una imagen de tu galería como fondo
|
||||
- Se aplica un efecto de blur para mejor legibilidad
|
||||
|
||||
#### Notificaciones
|
||||
- Mostrar imagen en notificaciones (activado por defecto)
|
||||
|
||||
#### Limpieza Automática de Basurero
|
||||
- Configura cuánto tiempo permanecen las notas en el basurero
|
||||
- Opciones: Desactivado, 1 día, 3 días, 7 días, 30 días
|
||||
|
||||
#### Datos
|
||||
- **Exportar**: Guarda todas las notas y categorías en un archivo JSON
|
||||
- **Importar**: Restaura desde un archivo de backup
|
||||
|
||||
### Gestos
|
||||
|
||||
- **Swipe horizontal**: Cambia entre pestañas
|
||||
- **Swipe en calendario**: Cambia de mes
|
||||
|
||||
### Consejos
|
||||
|
||||
1. **Recurrencia**: Usa recordatorios recurrentes para tareas periódicas
|
||||
2. **Categorías**: Organiza tus notas por colores para identificarlas rápidamente
|
||||
3. **Bordes de color**: Las cards muestran el color de su categoría en el borde
|
||||
4. **Backup**: Exporta regularmente tus datos para no perder información
|
||||
5. **Búsqueda**: Usa la búsqueda para encontrar notas antiguas rápidamente
|
||||
|
||||
---
|
||||
|
||||
## Repositorio Oficial
|
||||
|
||||
**[https://git.nakano47.com/nino/Recordatorios-app](https://git.nakano47.com/nino/Recordatorios-app)**
|
||||
Reference in New Issue
Block a user