# Call Blocker Aplicativo Android para bloqueio automático de chamadas de números desconhecidos. ## Sobre O **Call Blocker** bloqueia automaticamente chamadas recebidas de números que não estão salvos na sua lista de contatos. Utiliza a API CallScreeningService do Android (disponível a partir do Android 10) para interceptar e filtrar chamadas de forma transparente. ## Funcionalidades - Bloqueio automático de chamadas de números desconhecidos - Permite chamadas de números salvos nos contatos - Interface simples com botão liga/desliga - Integração nativa com o sistema de chamadas do Android - Bloqueia chamadas com número oculto/indisponível ## Requisitos - Android 7.0 (API 24) ou superior - Permissões necessárias: telefone, contatos e triagem de chamadas ## Estrutura do Projeto ``` call_blocker/ ├── app/ │ └── src/main/ │ ├── java/com/callblocker/ │ │ ├── MainActivity.kt # Atividade principal com UI │ │ └── CallBlockerService.kt # Serviço de triagem de chamadas │ ├── res/ # Recursos (layouts, strings, cores) │ └── AndroidManifest.xml ├── gradle/wrapper/ # Gradle wrapper ├── build.gradle.kts # Configuração do Gradle ├── settings.gradle.kts # Configuração de módulos └── Dockerfile # Build via Docker ``` ## Build via Docker ### Pré-requisitos - Docker instalado na máquina ### Construir a imagem ```bash docker build -t call-blocker-builder . ``` ### Gerar o APK ```bash docker run --rm -v $(pwd)/output:/app/app/build/outputs call-blocker-builder ``` O APK será gerado em `./output/apk/debug/app-debug.apk`. ### Comando único (build + extração) ```bash docker build -t call-blocker-builder . && \ docker run --rm -v $(pwd)/output:/app/app/build/outputs call-blocker-builder && \ echo "APK gerado em: ./output/apk/debug/app-debug.apk" ``` ## Build Local (sem Docker) ### Pré-requisitos - JDK 17 - Android SDK com platform-tools e build-tools 34.0.0 ### Gerar o APK ```bash chmod +x gradlew ./gradlew assembleDebug ``` O APK será gerado em `app/build/outputs/apk/debug/app-debug.apk`. ## Instalação ```bash adb install app-debug.apk ``` Ou transfira o APK para o dispositivo e instale manualmente. ## Licença Este projeto é de código aberto.