stopou_blocker 0.4.1
stopou_blocker: ^0.4.1 copied to clipboard
Plugin do Stopou para bloqueio por VPN local (preparado para estratégias futuras).
0.4.1 API SIMPLIFICADA E MÉTODOS SEPARADOS #
- 🔐 PERMISSÕES SEPARADAS - Métodos individuais requestVpnPermission() e requestAccessibilityPermission()
- 🌐 VPN INDIVIDUAL - startBlockerVpn(), stopBlockerVpn(), isVpnActive() para controle específico
- 🔍 KEYWORDS INDIVIDUAL - startBlockerKeywords(), stopBlockerKeywords(), isKeywordActive()
- 🛑 CONTROLE GRANULAR - stopAllBlockers() para parar tudo ou métodos individuais
- ✨ API LIMPA - Removido professionalSolution() (nome ruim), agora métodos diretos
- 📱 FLUTTERFLOW FRIENDLY - Cada função tem responsabilidade única e clara
- 🧪 DEBUG MANTIDO - diagnosticCompleteSystem(), emergencyStop(), repairSystem()
- 🔄 COMPATIBILIDADE - Métodos antigos redirecionam para novos (sem breaking changes)
- 📊 LOGS ESTRUTURADOS - [VPN], [KEYWORDS], [PERMISSION] para debug claro
- ✅ BUILD VALIDADO - Testado debug, release, testes unitários e pub publish
0.4.0 SOLUÇÃO PROFISSIONAL COMPLETA #
- 🎯 SOLUÇÃO PROFISSIONAL - Método professionalSolution() com estratégia dual completa
- 🔍 KEYWORDS MÚLTIPLAS ESTRATÉGIAS - Detecção robusta em navegadores com 3 métodos
- 🌐 VPN ULTRA-MÍNIMA - DNS-only VPN que não interfere com conectividade normal
- 🧪 DIAGNÓSTICO COMPLETO - diagnosticCompleteSystem() para análise total do sistema
- 🔧 SISTEMA DE REPARO - repairSystem() para correção automática de problemas
- 📊 TESTES ESPECÍFICOS - Métodos isolados para testar VPN, keywords e navegadores
- 🚨 GESTÃO DE EMERGÊNCIA - emergencyStop() e fullRestart() para situações críticas
- 📱 CONFIGURAÇÕES FLEXÍVEIS - startKeywordsOnly(), startVpnOnly() para testes
- 🌳 LOGS ESTRUTURADOS - Sistema completo de logs com prefixos para debug
- 📖 INSTRUÇÕES COMPLETAS - getDebugInstructions() com todos os comandos necessários
0.3.9 #
- 🌐 VPN CONECTIVIDADE FIX - Resolução definitiva do problema de internet bloqueada
- ⚡ DNS-ONLY VPN - Configuração ultra-minimalista que só intercepta DNS
- 🎯 ZERO ROTAS WEB - Removido addRoute() para CDNs e ranges IP que causavam bloqueio total
- 🔧 VPN PASSIVA - Sistema configura apenas 10.0.0.2/32 como DNS interceptor
- 🧪 TESTE CONECTIVIDADE - Novo método testVpnConnectivity() para validar funcionamento
- ✅ INTERNET NORMAL - Sites normais (google.com, youtube.com) devem funcionar
- ❌ BLOQUEIO .bet.br - Apenas domínios .bet/.bet.br são bloqueados via DNS
- 📊 LOGS ESTRUTURADOS - Logs 🔧 para VPN config e 🌐 para DNS processing
0.3.8 #
- 🔧 HOTFIX CRÍTICO - Corrigidos erros de compilação Kotlin na v0.3.7
- ✅ OVERLAY CALLS - Parâmetros corretos para AccessibilityOverlay.show() e BlockerOverlay.show()
- ✅ NULLABILITY - Correção de String? vs String em packageName (linhas 579, 600)
- 🚨 BUILD FIX - Todos os erros de compilação resolvidos
0.3.7 #
- 🌐 DETECÇÃO EM NAVEGADORES - Implementação específica para Chrome, Samsung Internet, Firefox, etc.
- 🌳 DEBUG TREE LOGGER - Helper logNodeTree() para debug da árvore de acessibilidade
- 🔍 EXTRAÇÃO URL/TÍTULO - Detecta keywords na URL bar e título da página em navegadores
- 🎯 ESTRATÉGIA NAVEGADOR - Fallback inteligente quando conteúdo da página não é acessível
- 🧪 testBrowserDetection() - Método para testar detecção em navegadores
- 📊 BROWSER INFO CLASS - Estrutura para armazenar URL, título e textos de navegadores
- 🔗 SUPORTE MÚLTIPLOS NAVEGADORES - Chrome, Samsung Internet, Firefox, Opera, Edge, Brave
- 📖 DOCUMENTAÇÃO NAVEGADORES - Arquivo NAVEGADORES_DEBUG.md com guia completo
- 🔍 LOGS ESTRUTURADOS - Prefixos específicos 🌐 [BROWSER_DETECTION] para fácil filtragem
0.3.6 #
- 🎯 BLOQUEIO INTELIGENTE POR SUFIXO - Agora bloqueia apenas domínios que TERMINAM com .bet, .bet.br
- ✅ PRECISÃO MELHORADA - firebase.googleapis.com agora PASSA, cassino.bet.br é BLOQUEADO
- 🛡️ ALLOWLIST AUTOMÁTICA - Domínios críticos (googleapis.com, firebaseio.com, etc.) sempre permitidos
- 🧠 HELPER matchesDomainSuffix() - Função inteligente com logs detalhados de qual regra bateu
- 🔧 MÉTODO updateAllowlist() - Permite atualizar domínios sempre permitidos
- 🚀 ACTIONS PARA FLUTTERFLOW - startVpnBlockingWithSuffixes() e testSuffixBlocking()
- 📖 DOCUMENTAÇÃO COMPLETA - Arquivo SUFIXOS_EXEMPLO.md com guia detalhado
- 🚨 STOP APRIMORADO - stopVpn() com aguardo de threads e limpeza forçada
- ⚡ EMERGENCY STOP - emergencyStop() com múltiplas tentativas para casos críticos
0.3.5 #
- 🔧 HOTFIX CRÍTICO - Corrigido erro de compilação Kotlin "Smart cast is impossible"
- ✅ BUILD CORRIGIDO - Problema com propriedade mutable redirectRoute resolvido
- 🎯 THREAD SAFETY - Captura valor local da redirectRoute para evitar concorrência
0.3.4 #
- 🔍 SISTEMA DE LOGS ULTRA DETALHADO - Prefixo 🔍 em todos os logs para filtragem fácil
- 📊 LOGS ESTRUTURADOS POR COMPONENTE - [PLUGIN], [ACCESSIBILITY], [KEYWORD_CHECK], [VPN_START], etc.
- 🧪 MÉTODO DE TESTE INTEGRADO - testKeywordDetection() para debug completo no FlutterFlow
- 📋 DEBUG CONFIG MÉTODO - debugCurrentConfig() mostra estado atual completo
- 📖 INSTRUÇÕES DE DEBUG - getDebugInstructions() com comandos logcat prontos
- 🔍 KEYWORD CHECK PALAVRA POR PALAVRA - Log detalhado de cada verificação
- 📱 VPN START/STOP COMPLETO - Log de cada etapa do processo
- 🎯 EXTRACTION LOGS - Rastreamento completo da extração de texto
- ✅ ACCESSIBILITY EVENTS - Log detalhado de todos os eventos processados
- 🚀 MÉTODOS PARA FLUTTERFLOW - Actions prontas para teste e debug
0.3.3 #
- 🚨 LOGS DE DEBUG COMPLETOS - Sistema de logs detalhados para diagnosticar pop-ups não aparecendo
- 🔧 POP-UPS CORRIGIDOS - BlockerOverlay e AccessibilityOverlay com fallbacks múltiplos
- 🌐 VPN INTERNET CORRIGIDA - Problema crítico: VPN bloqueava toda internet resolvido
- ⚡ ROTAS VPN INTELIGENTES - Tenta rotas DNS específicas antes de capturar todo tráfego
- 🔄 DUAL OVERLAY SYSTEM - AccessibilityOverlay + BlockerOverlay chamados simultaneamente
- 📱 LOGS ESTRUTURADOS - Prefixos 🚨 [Component] para facilitar debug via logcat
- ✅ REENCAMINHAMENTO DNS - Pacotes não-DNS agora são reencaminhados corretamente
- 🎯 PROBLEMA IDENTIFICADO - VPN anterior descartava pacotes TCP/HTTP causando perda de conexão
0.3.2 #
- ⚖️ THROTTLING BALANCEADO - Ajustado de 1s para 3s (reduz spam de logs)
- 🌐 DETECÇÃO EM NAVEGADORES - Removidos apps ignorados desnecessários
- ✅ CHROME DESBLOQUEADO - Agora detecta keywords em resultados de busca
- 🎯 LISTA FOCADA - Apps ignorados reduzidos para apenas essenciais (sistema, teclados)
- 📊 MENOS RUÍDO - Throttling otimizado para melhor performance
0.3.1 #
- 🐛 CORREÇÃO CRÍTICA DE DETECÇÃO - Debug mode ativado por padrão
- ⚡ RESPONSIVIDADE MELHORADA - Throttling reduzido de 5s para 1s
- 📊 LOGS CRÍTICOS SEMPRE VISÍVEIS - Logs de detecção aparecem mesmo sem debug
- 🔍 MELHOR DIAGNÓSTICO - Logs detalhados para identificar problemas de detecção
- ✅ CORREÇÃO: Finalmente detecta keywords em sites de apostas corretamente
0.3.0 #
- 🎯 MAJOR RELEASE - Revisão completa do sistema de detecção
- 🧠 DETECÇÃO SUPER INTELIGENTE - Lógica expandida com contextos seguros vs suspeitos
- ⚡ PERFORMANCE OTIMIZADA - Throttling aumentado (5s), cooldown aumentado (15s)
- 🔇 MODO DEBUG - Logs verbosos apenas em modo debug, produção limpa
- 🚫 FILTROS EXPANDIDOS - Lista completa de apps ignorados (teclados, configurações, etc)
- 🎛️ EXTRAÇÃO OTIMIZADA - Só extrai texto da tela quando necessário (<50 chars)
- 🛡️ CONTEXTOS SEGUROS - Ignora "excluir bet", "bet do histórico", "configurações"
- 🚨 CONTEXTOS SUSPEITOS - Detecta "bet online grátis", "ganhe dinheiro bet"
- 🧹 MENOS RUÍDO - Redução drástica de logs desnecessários
- ✅ STOP COMPLETO - stopKeywordBlocker para 100% o processamento
0.2.9 #
- 🛠️ CORREÇÃO CRÍTICA - stopKeywordBlocker agora para completamente o processamento de eventos
- ✅ Flag isActive - Serviço para de processar quando não há keywords ativas
- 🔇 Sem spam após stop - Zero logs desnecessários quando o serviço está parado
- 🧪 Detecção testada - Confirmado funcionamento correto com palavras reais (bet, 1xbet, aposta)
- 🎯 Rota confirmada - RedirectRoute /BlocksPopUp funcionando perfeitamente
0.2.8 #
- ⚡ OTIMIZAÇÃO DE PERFORMANCE - Lista expandida de apps ignorados para reduzir processamento
- 🚫 Filtros adicionais - Ignora launcher, AOD service e Google Search para melhor eficiência
- 📱 Menos ruído - Redução significativa de eventos desnecessários nos logs
- 🎯 Foco melhorado - Monitora apenas apps relevantes para detecção de apostas
0.2.7 #
- 🧠 DETECÇÃO INTELIGENTE - Lógica melhorada para evitar falsos positivos em contextos seguros
- ✅ Filtros inteligentes - Ignora "bet.br" em textos educativos, só triggera em contextos suspeitos
- ⏱️ Menos eventos - Cooldown aumentado para 10s e filtro do systemui para reduzir spam
- 🎯 Melhor precisão - Evita detecção no próprio app com filtros expandidos
- 📱 Rota corrigida - Documentação atualizada para usar rota correta "blocksPopUp"
0.2.6 #
- 🛠️ CORREÇÃO CRÍTICA - Variável currentTime duplicada no KeywordBlockerService.kt
- ✅ Conflito resolvido - Renomeado triggerTime para evitar conflitos de declaração
- ✅ Build Android corrigido - Agora compila sem erros no Kotlin
0.2.5 #
- 🛠️ HOTFIX CRÍTICO - Removido export do stopou_blocker_actions.dart temporariamente
- ✅ Correção de compilação - stopou_blocker_actions.dart não é mais importado automaticamente
- ✅ Workaround para v0.2.3 - Usuários podem usar StopouBlocker diretamente sem erros
- ⚠️ Breaking change temporário - stopou_blocker_actions deve ser importado manualmente se necessário
0.2.4 #
- 🛠️ CORREÇÃO CRÍTICA - Erro de compilação "Too few positional arguments" no startKeywordBlocker
- ✅ Parâmetros corrigidos - startKeywordBlocker agora recebe corretamente o parâmetro keywords
- ✅ Build corrigido - Versão publicada no pub.dev agora compila sem erros
- ✅ Actions funcionais - stopou_blocker_actions.dart totalmente funcional
0.2.0 #
- 🚀 NOVA FUNCIONALIDADE - Parâmetro redirectRoute no startKeywordBlocker
- ✅ Intent Redirect - Abre MainActivity com rota específica quando redirectRoute é fornecido
- ✅ Overlay de Acessibilidade - Overlay em tela cheia quando não há redirectRoute
- ✅ Android 12+ Compatible - Remove Toast, usa TYPE_ACCESSIBILITY_OVERLAY
- ✅ Sem SYSTEM_ALERT_WINDOW - Não requer permissões extras de overlay
- 🎯 Exemplo de uso:
startKeywordBlocker(['bet'], redirectRoute: '/exercicio-autocontrole')
0.1.7 #
- 🔍 LOGS SUPER DETALHADOS - Debug completo para diagnosticar problemas de detecção
- ✅ Mais tipos de eventos - Inclui WINDOW_STATE_CHANGED para melhor detecção
- ✅ Logs de cada palavra - Verifica palavra por palavra nos logs
- ✅ Configuração expandida - Remove restrição de pacotes específicos
- ✅ Força atualização - Keywords forçadas no serviço rodando
0.1.6 #
- 🛠️ HOTFIX CRÍTICO - Erro de compilação "Unresolved reference 'applicationContext'"
- ✅ Correção: Substituído
applicationContextporcontextem RestrictedSettingsHelper - ✅ Build corrigido: APK/AAB compilam sem erros
0.1.5 #
- 🔍 DIAGNÓSTICO KEYWORDS - Logs detalhados para debugging do monitoramento de palavras
- ✅ Método getActiveKeywords() - Verifica quais keywords estão ativas em tempo real
- ✅ FlutterFlow Actions - Arquivo
stopou_blocker_actions.dartcom métodos simplificados - ✅ stopKeywordMonitoring() - Método para parar o monitoramento
- ✅ Logs melhorados - KeywordBlockerService mostra estado das keywords
- ✅ Testes corrigidos - Mock implementa todos os métodos necessários
- ✅ SharedPreferences sync - Keywords salvas em duplicado para garantir persistência
0.1.4 #
- 🛠️ CORREÇÃO CRÍTICA - Erro de compilação Kotlin "Argument type mismatch"
- ✅ Null safety - Correção de
e.messagenullable em mapOf() - ✅ Tipo safety - Todas chamadas sendEvent agora usam tipos corretos
- ✅ Build corrigido - APK/AAB agora compilam sem erros
0.1.3 #
- 🔍 DEBUG VERSION - Logs detalhados para identificar problema da VPN não ativar
- ✅ Logs expandidos - Rastreamento completo do fluxo VPN (plugin → service → interface)
- ✅ Verificação de permissões - Valida permissão VPN antes de tentar iniciar
- ✅ Error handling melhorado - Retorna erros específicos em vez de falhar silenciosamente
- ✅ Diagnóstico de interface - Logs detalhados do processo
builder.establish()
0.1.2 #
- 🛠️ CORREÇÃO CRÍTICA - Serviço de acessibilidade não aparecendo nas configurações
- ✅ AndroidManifest corrigido - Nome completo do serviço (
app.stopou.stopou_blocker.KeywordBlockerService) - ✅ Label adicionado - Serviço agora aparece como "Stopou Blocker" nas configurações
- ✅ Configuração XML limpa - Removida configuração incorreta de
settingsActivity - ✅ Descrição otimizada - Texto mais claro e direto para aprovação do sistema
0.1.1 #
- 🔧 CORREÇÃO CRÍTICA - Permissões de acessibilidade em Android restritivo
- ✅ Configuração otimizada do serviço de acessibilidade para evitar bloqueio do sistema
- ✅ Instruções detalhadas no app exemplo para ativar permissões restritas
- ✅ Novo método
openAccessibilitySettings()para melhor UX - ✅ Descrição melhorada do serviço focada em "well-being digital"
- ✅ Configuração menos invasiva (
canRetrieveWindowContent=false)
0.1.0 #
- 🚀 MAJOR UPDATE - Plugin totalmente otimizado para FlutterFlow
- ✅ 6 novos métodos de verificação de status:
hasVpnPermission(),hasAccessibilityPermission(),hasNotificationPermission(),isVpnRunning(),isKeywordBlockerRunning() - ✅ Overlay customizável para alertas (substitui Toast simples)
- ✅ Accessibility Service otimizado (-80% eventos processados, throttling de 1s, cache persistente)
- ✅ VPN robusto com retry automático, health checks e fallback DNS
- ✅ Permissão SYSTEM_ALERT_WINDOW para overlays do sistema
- ✅ Tratamento avançado de erros com recovery automático
- ✅ Testes unitários expandidos para cobertura completa
- ✅ App exemplo redesenhado com dashboard em tempo real
- ✅ Documentação detalhada das melhorias para FlutterFlow
0.0.11 #
- Atualização de versão para publicação no pub.dev.
0.0.10 #
- Exibe a palavra-chave detectada no aviso de acessibilidade.
0.0.9 #
- Atualização de versão para publicação no pub.dev.
0.0.8 #
- Adicionado enum
BlockStrategiese parâmetrostrategiesnostartpara definir estratégias de bloqueio.
0.0.7 #
- Adicionado parâmetro
dnsServersnostartpara configurar servidores DNS iniciais. - Removido curinga
*do exemplo de blocklist (usar.bet.br).
0.0.6 #
- Suporte para atualização dinâmica do servidor DNS via
updateDnsServers.
0.0.5 #
- Correção de compatibilidade no método
onRequestPermissionsResult(Android 13+). - Adicionado suporte à permissão de notificações (
POST_NOTIFICATIONS). - Melhoria no tratamento de erros e logs no plugin.
- Ajustes no fluxo de inicialização da VPN.
0.0.4 #
- Correções na configuração do plugin
- Ajuste no fluxo de build Android
- Preparação para testes de VPN no APK
0.0.3 #
Versão corrigida CODEx.
0.0.2 #
- Separado método de permissão (
requestPermission) do método de execução da VPN (startVpn). - Melhorias no controle do fluxo de inicialização da VPN.
0.0.1 #
- Primeira versão publicada do stopou_blocker.
- Suporte inicial para Android usando
VpnService. - Exposição de métodos básicos:
requestPermissionstartstopupdateBlocklistgetStatus
- Suporte a eventos em tempo real via
EventChannel(stopou_blocker/events).