App Android em Java para a NUP 2 de Programacao Para Dispositivos Moveis.
Tema: uma central de operacoes onde o usuario cadastra, acompanha e conclui missoes. O app foi pensado para ser simples de apresentar, mas com uma ideia menos padrao do que uma lista de tarefas comum.
- CRUD completo de missoes
SQLiteem memoriaSharedPreferencesServiceBroadcastReceiverAsyncTask- UI em
Activity + XML
MainActivity: tela principal, CRUD e integracao da UIMissionDbHelper: banco SQLite em memoriaMissionRepository: regras de persistenciaPreferencesManager: configuracoes com SharedPreferencesMissionPulseService: varredura periodica em segundo planoMissionSignalReceiver: recepcao de broadcast customizadoMissionAnalysisTask: processamento assincro com AsyncTask
Essa e a forma mais simples.
- Instale o Android Studio.
- Durante a instalacao, deixe marcado:
- Android SDK
- Android SDK Platform
- Android SDK Platform-Tools
- Android Emulator
- Abra o Android Studio.
- Clique em
Open. - Selecione a pasta deste projeto.
- Aguarde o sync do Gradle.
Observacao importante:
- Este ambiente onde o projeto foi montado nao tinha Gradle instalado localmente, entao o
gradle-wrapper.jarnao foi gerado automaticamente. - Se o Android Studio reclamar do wrapper, instale Gradle localmente e rode
gradle wrapperuma vez na raiz do projeto, ou crie um projeto Android Java vazio no Android Studio e copie estes arquivos por cima.
Voce pode editar no VS Code, mas para build Android o caminho mais confiavel continua sendo Android Studio.
Se quiser usar seu VS Code com a extensao de emulador:
- Instale Android Studio.
- Crie um AVD no Android Studio.
- Configure o caminho do emulator no VS Code:
"emulator.emulatorPathWindows": "C:\\Users\\SEU_USUARIO\\AppData\\Local\\Android\\Sdk\\emulator"- Rode o emulador pela extensao.
- Use Android Studio para sync/build, ou Gradle local se tiver instalado.
Recomendado:
- JDK 17
Pode funcionar com:
- JDK 21
- JDK 25
Mas, para Android/Gradle, se o JDK 25 causar erro de compatibilidade, troque para 17.
- Abra o projeto.
- Espere o sync terminar.
- Menu
Build>Build Bundle(s) / APK(s)>Build APK(s). - O Android Studio mostrara um link quando o APK estiver pronto.
Caminho esperado:
app/build/outputs/apk/debug/app-debug.apk
Se voce instalar Gradle e quiser gerar o wrapper:
gradle wrapperDepois:
gradlew.bat assembleDebugSe estiver no Git Bash ou Linux:
./gradlew assembleDebug- No celular, ative
Opcoes do desenvolvedor. - Ative
Depuracao USB. - Conecte o celular no computador.
- Confirme a autorizacao ADB no celular.
adb devicesSe aparecer um serial com status device, esta pronto.
adb install -r app\\build\\outputs\\apk\\debug\\app-debug.apkadb shell monkey -p br.edu.ppdm.missoesdodia 1- Abra
Device Manager. - Crie um emulador Android.
- Inicie o emulador.
- Clique em
Run.
- Garanta que o AVD ja foi criado no Android Studio.
- Inicie o emulador pela extensao.
- Depois rode o app pelo Android Studio ou use ADB para instalar o APK.
- Abrir o app.
- Cadastrar 2 ou 3 missoes com prioridades diferentes.
- Editar uma missao.
- Concluir uma missao.
- Excluir uma missao.
- Ligar o radar manual.
- Enviar um sinal para o
BroadcastReceiver. - Rodar a
AsyncTaskno botaoAnalisar missoes. - Mostrar no painel:
- total
- pendentes
- concluidas
- criticas
- horario do ultimo broadcast
O banco foi feito em memoria de proposito, como voce pediu.
Isso significa:
- os dados existem enquanto o processo do app estiver vivo
- se o app for encerrado de vez pelo sistema, as missoes somem
Para apresentacao em sala isso e bom porque deixa a demo controlada e sem lixo de execucoes anteriores.
Leia tambem:
REQUISITOS_NUP2.md
Esse arquivo explica:
- o que e cada requisito
- onde esta no codigo
- como demonstrar funcionando
Este ambiente nao tinha java, adb nem gradle disponiveis no PATH, entao eu nao consegui rodar build local nem gerar APK daqui. O projeto foi estruturado completo, mas a validacao final do APK precisa ser feita na sua maquina com Android Studio ou com Gradle instalado.