← Voltar ao Início
Política de Privacidade
Última atualização: 8 de maio de 2026
1. Introdução
A Alerta ("nós", "nosso" ou "a app") está empenhada em proteger a sua privacidade. Esta Política de Privacidade explica como recolhemos, utilizamos e protegemos as suas informações quando utiliza a nossa aplicação móvel.
2. Informação que Recolhemos
2.1 Dados de Localização
Se conceder permissão, a Alerta utiliza a localização do seu dispositivo para:
- Centrar o mapa na sua posição atual
- Calcular distâncias até às ocorrências
- Filtrar localmente que ocorrências estão dentro do seu raio de alerta
A localização permanece no seu dispositivo, exceto quando ativa explicitamente os Alertas de ocorrências (ver secção 2.3) ou quando submete uma denúncia cidadã (ver secção 2.5).
2.2 Definições da App
As suas preferências de notificação (raio de alerta, tipos de ocorrência, definições de som, idioma) são armazenadas localmente no seu dispositivo utilizando mecanismos de armazenamento padrão da plataforma (UserDefaults no iOS, EncryptedSharedPreferences/DataStore no Android).
2.3 Alertas de Ocorrências (Push) — opt-in
Se ativar a opção Alertas de ocorrências nas Definições da app, transmitimos para o nosso servidor o mínimo necessário para entregar notificações enquanto a app está fechada:
- Token de notificação push (FCM token) — identificador anónimo gerado pelo Firebase Cloud Messaging, válido apenas para esta instalação da app neste dispositivo
- Ponto de monitorização — uma única coordenada (lat/lng) que escolhe ao ativar a opção. Por predefinição, este ponto não é atualizado quando se desloca; só é reenviado se ativar adicionalmente "Atualizar localização automaticamente" e ultrapassar 2 km do último ponto enviado, com um limite mínimo de 1 hora entre atualizações.
- Raio de alerta e idioma preferido — para que o servidor envie a notificação localizada
- Magnitude mínima de sismo (opcional) — se ativar os Alertas de Sismos, o limiar de magnitude que escolhe (1.0–6.0) é guardado para que o servidor saiba a partir de que ponto deve enviar uma notificação. Os dados sismológicos vêm do IPMA (fonte pública).
- Identificador de utilizador (apenas se tiver iniciado sessão) — quando inicia sessão, o registo do dispositivo no servidor é associado à sua conta para que os operadores da Proteção Civil possam saber quem é o autor das denúncias cidadãs e para podermos preservar a sua reputação ao mudar de dispositivo. Se nunca iniciar sessão, este campo permanece vazio e o registo é completamente anónimo.
- Histórico de localização (30 dias) — para apoiar a operação dos serviços de emergência, sempre que o seu ponto de monitorização muda mais de 200 metros, gravamos o novo par lat/lng com um carimbo de tempo. Estes pontos são automaticamente eliminados ao fim de 30 dias. Permite ao painel dos operadores visualizar as deslocações dos dispositivos durante uma operação. Não é guardado um trilho contínuo (apenas as posições onde se moveu significativamente); o histórico é eliminado se desativar os Alertas de ocorrências ou eliminar a sua conta.
Quando desativa os Alertas de ocorrências, o registo do dispositivo e o seu histórico de localização são eliminados do nosso servidor.
2.4 Conta de Utilizador (Início de Sessão) — opt-in
A Alerta permite, mas não exige, iniciar sessão. Pode ver o mapa, receber alertas push e usar a app inteira sem conta. O início de sessão é necessário apenas para submeter denúncias cidadãs (ver secção 2.5).
Quando inicia sessão com Sign in with Apple ou Sign in with Google, recebemos da Apple/Google um identificador estável (subject id) e, se permitir, o seu nome e email. Não armazenamos a sua palavra-passe — a autenticação é feita inteiramente por Apple/Google. No nosso servidor guardamos:
- O subject id + fornecedor (apple/google) — para reconhecer a sua conta em futuros inícios de sessão
- Um nome de exibição que pode editar livremente nas Definições da app
- Um email (opcional, fornecido pela Apple/Google) — usado apenas internamente; nunca o partilhamos com terceiros
- Uma pontuação de reputação (trust score) derivada do histórico das suas denúncias cidadãs (precisão, fotografias, confirmações por operadores) — não envolve dados externos à app
- Um token de sessão de 30 dias, renovado a cada utilização
Pode editar o seu nome de exibição, terminar sessão ou apagar a conta a qualquer momento nas Definições da app. Apagar a conta remove todos os dados associados, dissocia as suas denúncias cidadãs (passam a anónimas) e elimina sessões e fotografias.
2.5 Denúncias Cidadãs — opt-in
Se decidir submeter uma denúncia cidadã sobre uma ocorrência (incêndio, acidente, etc.), recolhemos e armazenamos no nosso servidor:
- O tipo de ocorrência (categoria escolhida na app)
- A localização em coordenadas (lat/lng) do incidente — escolhida por si no mapa, não derivada da sua localização atual
- Uma descrição em texto livre que escreve (opcional, máximo 280 caracteres)
- Uma ou mais fotografias (opcional) — armazenadas no Cloudflare R2; metadados EXIF são removidos pelo servidor antes do armazenamento
- Um indicador de anonimato que escolhe na submissão (publicar com o seu nome ou anonimamente)
- O instante (timestamp) de submissão
- O seu identificador de utilizador (não público se escolher anónimo)
As denúncias submetidas são visíveis no mapa público da Alerta e na app irmã Fire (que partilha o mesmo serviço de denúncias cidadãs), bem como no painel dos operadores da Proteção Civil. Pode resolver, eliminar ou denunciar como falsa qualquer denúncia sua a qualquer momento.
2.6 Denúncias de Fiscalização Policial — responsabilidade do utilizador
As categorias de denúncia "Polícia no local" e "Radar de velocidade" são disponibilizadas como simples rótulos informativos. A utilização destas categorias para avisar terceiros sobre fiscalizações ou controlos rodoviários pode estar sujeita a restrições legais que variam consoante a jurisdição — em Portugal, por exemplo, o artigo 91.º do Código da Estrada proíbe expressamente avisar outros condutores da existência de controlos policiais.
A utilização da função de denúncia para esses fins é da exclusiva responsabilidade do utilizador, que tem o dever de cumprir as leis locais do território onde se encontra. A Alerta limita-se a fornecer a infraestrutura técnica de denúncia; não verificamos, avalizamos nem nos responsabilizamos pela forma como cada denúncia é utilizada.
2.7 Consentimento de Publicidade na União Europeia
Em utilizadores na UE/EEE/Reino Unido/Suíça, a Alerta apresenta na primeira utilização um diálogo de consentimento gerido pela User Messaging Platform (UMP) da Google, em conformidade com o IAB TCF v2.2. As suas escolhas (consentir, recusar ou personalizar por fornecedor) são armazenadas no dispositivo pela própria UMP e podem ser revistas em qualquer momento em Definições → Sobre → Gerir opções de privacidade.
3. Publicidade
A Alerta apresenta anúncios através do Google AdMob. Para utilizadores na UE/EEE/Reino Unido/Suíça, a personalização dos anúncios depende inteiramente da sua escolha no diálogo de consentimento descrito na secção 2.7 — se recusar consentimento, o AdMob serve apenas anúncios não personalizados. Para utilizadores fora dessa região, o AdMob pode utilizar:
- Identificadores de dispositivo (como ID de publicidade)
- Endereço IP
- Localização geral (baseada no endereço IP)
- Dados de utilização da app
Pode optar por não receber publicidade personalizada também através das definições do seu dispositivo:
- iOS: Definições → Privacidade e Segurança → Rastreio → desativar "Permitir que as Apps Peçam para Rastrear"
- Android: Definições → Privacidade → Anúncios → "Excluir personalização de anúncios" ou repor o ID de publicidade
Para mais informações sobre como a Google trata os dados, visite a Política de Privacidade da Google.
4. Dados que NÃO Recolhemos
A Alerta não recolhe, armazena ou transmite:
- A sua palavra-passe (a autenticação é gerida inteiramente pela Apple/Google)
- Dados analíticos de utilização ou de rastreio comportamental para além do que é descrito nesta política
- Histórico contínuo da sua localização (apenas o ponto de monitorização opt-in descrito em 2.3)
- Conteúdos do dispositivo (contactos, calendário, fotos para além das que escolher anexar a uma denúncia, etc.)
Se nunca ativar os Alertas de ocorrências, nunca iniciar sessão e nunca submeter uma denúncia cidadã, nenhum dado pessoal seu chega ao nosso servidor.
5. Serviços de Terceiros
A Alerta utiliza os seguintes serviços externos:
- ANEPC (Autoridade Nacional de Emergência e Proteção Civil) / ProCiv: Fonte oficial dos dados de ocorrências (endpoint público ArcGIS).
- IPMA — Instituto Português do Mar e da Atmosfera: Dados de sismos e mapas de risco de incêndio (fonte pública).
- USGS — United States Geological Survey: Dados de sismos a nível mundial (fonte pública).
- Apple Maps / OpenStreetMap (MapLibre): Mapas e imagens de satélite. No iOS é usado o Apple Maps; no Android é usado o MapLibre com tiles do OpenStreetMap.
- Cloudflare Workers e D1 (Cloudflare, Inc., infraestrutura na União Europeia): Aloja o nosso servidor de notificações push e a base de dados de denúncias cidadãs.
- Cloudflare R2: Armazena fotografias anexadas a denúncias cidadãs (com EXIF removido).
- Firebase Cloud Messaging (Google Ireland Limited): Serviço de entrega de notificações push para iOS (via Apple Push Notification service) e Android. O FCM trata o token do dispositivo e o conteúdo da notificação como subcontratante.
- Sign in with Apple (Apple Inc.): Provedor de identidade para o início de sessão opcional no iOS.
- Sign in with Google (Google Ireland Limited): Provedor de identidade para o início de sessão opcional no iOS e Android.
- Google AdMob e User Messaging Platform: Publicidade e gestão de consentimento — ver secções 2.7 e 3.
Estes serviços podem registar dados padrão de pedidos web (endereço IP, timestamp) de acordo com as suas próprias políticas de privacidade.
6. Armazenamento de Dados
No seu dispositivo:
- Definições de notificação (em UserDefaults / EncryptedSharedPreferences)
- IDs de ocorrências já notificadas localmente, para evitar alertas duplicados ao reabrir a app
- Token de sessão da sua conta (em Keychain no iOS, EncryptedSharedPreferences no Android), apenas se iniciar sessão
- Escolhas de consentimento UMP (apenas em utilizadores na UE/EEE/Reino Unido/Suíça)
No nosso servidor (apenas se a funcionalidade respetiva estiver ativa):
- Token FCM, ponto de monitorização (lat/lng), raio de alerta, idioma e o instante da última atualização — uma única linha por instalação da app, atualizada quando alterar as definições.
- Histórico de localização do dispositivo (lat/lng + timestamp), apenas para movimentações superiores a 200 m, com retenção máxima de 30 dias.
- Lista das ocorrências já notificadas a si nos últimos 7 dias, para evitar repetição. Removidas automaticamente após esse período.
- Conta de utilizador (subject id, email opcional, nome de exibição, pontuação de reputação) — apenas se iniciar sessão.
- Denúncias cidadãs que submeter, incluindo localização, descrição, tipo, fotografias (sem EXIF) e instante de criação. Mantemo-las até as resolver, eliminar ou serem rejeitadas pelos operadores; entre 30 a 90 dias depois disso, são marcadas como removidas e os dados pessoais associados anonimizados.
O registo de dispositivo é eliminado do servidor assim que desativar os Alertas de ocorrências ou que o token FCM se torne inválido (por exemplo, ao reinstalar a app). A conta de utilizador é eliminada quando solicitar a sua remoção em Definições → Conta → Eliminar conta.
7. Notificações
A Alerta utiliza dois caminhos de notificação:
- Notificações locais: Quando a app está aberta e tem permissão de localização, gera notificações localmente quando uma ocorrência aparece dentro do seu raio. Os IDs já notificados são guardados localmente no dispositivo para evitar repetições, mesmo após reiniciar a app. Nenhum servidor envolvido.
- Alertas de ocorrências (push, opt-in): O nosso servidor consulta os dados públicos da ANEPC a cada poucos minutos. Quando deteta uma nova ocorrência dentro do raio que registou, envia uma notificação push para o seu dispositivo via Firebase Cloud Messaging e Apple Push Notification service. Isto permite-lhe receber alertas mesmo com a app fechada.
Pode desativar qualquer dos caminhos a qualquer momento nas Definições da app ou nas Definições do sistema.
8. Privacidade de Menores
A Alerta não recolhe intencionalmente qualquer informação pessoal de crianças menores de 13 anos. A app não requer qualquer informação pessoal para funcionar e a funcionalidade de início de sessão pelos provedores Apple/Google está sujeita às restrições de idade desses serviços.
9. Os Seus Direitos
Pode:
- Negar ou revogar permissões de localização a qualquer momento nas Definições do sistema
- Desativar notificações nas Definições do sistema ou dentro da app
- Terminar sessão ou apagar permanentemente a sua conta em Definições → Conta
- Resolver, eliminar ou marcar como falsa qualquer das suas denúncias cidadãs
- Rever ou alterar as suas escolhas de consentimento de publicidade em Definições → Sobre → Gerir opções de privacidade (apenas utilizadores na UE/EEE/Reino Unido/Suíça)
- Eliminar a app para remover todos os dados armazenados localmente
- Solicitar uma cópia ou eliminação dos seus dados, contactando-nos pelo email indicado na secção 12 (em conformidade com o RGPD)
10. Alterações a Esta Política
Podemos atualizar esta Política de Privacidade periodicamente. As alterações serão publicadas nesta página com uma data de revisão atualizada.
11. Conformidade com as Lojas de Aplicações
A Alerta está disponível na Apple App Store e na Google Play Store. Cumpre as Diretrizes da App Store da Apple e a Política de Programa para Programadores da Google Play, incluindo as secções relativas à privacidade, tratamento de dados e publicidade.
12. Contacto
Se tiver questões sobre esta Política de Privacidade, contacte:
Walter Tengler
Email: walter.tengler@gmail.com
Privacy Policy
Last updated: May 8, 2026
1. Introduction
Alerta ("we", "our", or "the app") is committed to protecting your privacy. This Privacy Policy explains how we collect, use, and safeguard your information when you use our mobile application.
2. Information We Collect
2.1 Location Data
If you grant permission, Alerta uses your device's location to:
- Center the map on your current position
- Calculate distances to incidents
- Filter locally which incidents are within your alert radius
Location stays on your device, except when you explicitly enable Incident alerts (see section 2.3) or submit a citizen report (see section 2.5).
2.2 App Settings
Your notification preferences (alert radius, incident types, sound settings, language) are stored locally on your device using the platform's standard storage mechanisms (UserDefaults on iOS, EncryptedSharedPreferences/DataStore on Android).
2.3 Incident Alerts (push) — opt-in
If you enable Incident alerts in the app's Settings, we transmit the minimum data needed to deliver notifications while the app is closed:
- Push notification token (FCM token) — an anonymous identifier issued by Firebase Cloud Messaging, valid only for this install of the app on this device
- Monitoring point — a single coordinate (lat/lng) chosen when you enable the option. By default this point is not updated as you move; it is only re-sent if you additionally enable "Auto-update my location" and you've moved more than 2 km from the last sent point, with a minimum 1-hour cool-down between updates.
- Alert radius and preferred language — so the server can localize the notification
- Earthquake minimum magnitude (optional) — if you enable Earthquake Alerts, the magnitude threshold you pick (1.0–6.0) is stored so the server knows when to push you. Earthquake data itself comes from IPMA (a public source).
- User identifier (only if you have signed in) — when you sign in, the device row on the server is associated with your account so Civil Protection operators can attribute citizen reports to a known user and so your reputation is preserved across device changes. If you never sign in, this field stays empty and the device record is fully anonymous.
- Location history (30 days) — to support Civil Protection operations, every time your monitoring point moves more than 200 metres we record the new lat/lng pair with a timestamp. These points are automatically deleted after 30 days. The operator dashboard uses them to visualise device movement during an operation. We do not record a continuous trail (only positions where you've moved significantly); the history is deleted if you disable Incident alerts or delete your account.
When you turn Incident alerts off, the device record and its location history are deleted from our server.
2.4 User Account (Sign-In) — opt-in
Alerta lets you sign in but does not require it. You can view the map, receive push alerts and use the entire app without an account. Sign-in is required only to submit citizen reports (see section 2.5).
When you sign in with Sign in with Apple or Sign in with Google, we receive from Apple/Google a stable identifier (subject id) and, if you allow it, your name and email. We never store your password — authentication is handled entirely by Apple/Google. On our server we keep:
- The subject id + provider (apple/google), to recognise your account on future sign-ins
- A display name you can freely edit in the app's Settings
- An email (optional, supplied by Apple/Google) — used only internally; never shared with third parties
- A reputation score derived from your citizen-report history (accuracy, photo evidence, operator confirmations) — based only on in-app actions
- A session token valid for 30 days, refreshed on each use
You can edit your display name, sign out, or delete your account at any time in the app's Settings. Deleting the account removes all associated data, anonymises your citizen reports, and erases sessions and photos.
2.5 Citizen Reports — opt-in
If you choose to submit a citizen report about an incident (fire, accident, etc.), we collect and store on our server:
- The type of incident (category you pick in the app)
- The location in coordinates (lat/lng) of the incident — chosen by you on the map, not derived from your current position
- A free-text description you write (optional, up to 280 characters)
- One or more photos (optional) — stored in Cloudflare R2; EXIF metadata is stripped server-side before storage
- An anonymity flag you set on submission (post under your name or anonymously)
- The submission timestamp
- Your user identifier (not publicly displayed if you choose anonymous)
Submitted reports are visible on the public Alerta map and on the sister app Fire (which shares the same citizen-report service), as well as on the Civil Protection operator dashboard. You can resolve, delete, or flag any of your own reports at any time.
2.6 Police-Check Reports — user responsibility
The "Police on site" and "Speed radar" report categories are provided as informational labels. Using these categories to warn third parties about traffic enforcement or road-side checks may be subject to legal restrictions that vary by jurisdiction — in Portugal, for example, Article 91 of the Código da Estrada explicitly prohibits warning other drivers about the existence of police checks.
Using the reporting function for these purposes is the user's sole responsibility, and the user is required to comply with the local laws of the territory in which they are located. Alerta only provides the technical reporting infrastructure; we do not verify, endorse, or take responsibility for how individual reports are used.
2.7 EU Advertising Consent
For users in the EU/EEA/UK/Switzerland, on first launch Alerta presents a consent dialog managed by Google's User Messaging Platform (UMP), in line with IAB TCF v2.2. Your choices (consent, refuse or per-vendor customisation) are stored on-device by UMP itself and can be reviewed at any time under Settings → About → Manage privacy choices.
3. Advertising
Alerta displays advertisements through Google AdMob. For users in the EU/EEA/UK/Switzerland, ad personalisation depends entirely on your choice in the consent dialog described in section 2.7 — if you refuse consent, AdMob serves only non-personalised ads. For users outside that region, AdMob may use:
- Device identifiers (such as advertising ID)
- IP address
- General location (based on IP address)
- App usage data
You can also opt out of personalised advertising via your device settings:
- iOS: Settings → Privacy & Security → Tracking → disable "Allow Apps to Request to Track"
- Android: Settings → Privacy → Ads → "Opt out of Ads Personalization" or reset your advertising ID
For more information about how Google handles data, please visit Google's Privacy Policy.
4. Data We Do NOT Collect
Alerta does not collect, store, or transmit:
- Your password (authentication is entirely handled by Apple/Google)
- Behavioural usage analytics or tracking beyond what is described in this policy
- A continuous trail of your location (only the opt-in monitoring point described in 2.3)
- Device contents (contacts, calendar, photos other than those you choose to attach to a citizen report, etc.)
If you never enable Incident alerts, never sign in and never submit a citizen report, none of your personal data reaches our server.
5. Third-Party Services
Alerta uses the following external services:
- ANEPC (Autoridade Nacional de Emergência e Proteção Civil) / ProCiv: Official source of incident data (public ArcGIS endpoint).
- IPMA — Portuguese Institute for Sea and Atmosphere: Earthquake feed and fire-risk maps (public source).
- USGS — United States Geological Survey: Worldwide earthquake feed (public source).
- Apple Maps / OpenStreetMap (MapLibre): Map tiles and satellite imagery. iOS uses Apple Maps; Android uses MapLibre with OpenStreetMap tiles.
- Cloudflare Workers and D1 (Cloudflare, Inc., infrastructure in the European Union): Hosts our push-notification backend and the citizen-reports database.
- Cloudflare R2: Stores photos attached to citizen reports (with EXIF stripped).
- Firebase Cloud Messaging (Google Ireland Limited): Push delivery service for iOS (via Apple Push Notification service) and Android. FCM processes the device token and notification payload as a sub-processor.
- Sign in with Apple (Apple Inc.): Identity provider for optional sign-in on iOS.
- Sign in with Google (Google Ireland Limited): Identity provider for optional sign-in on iOS and Android.
- Google AdMob and User Messaging Platform: Advertising and consent management — see sections 2.7 and 3.
These services may log standard web request data (IP address, timestamp) according to their own privacy policies.
6. Data Storage
On your device:
- Notification preferences (in UserDefaults / EncryptedSharedPreferences)
- Already-notified incident IDs, to prevent duplicate alerts when reopening the app
- Account session token (in Keychain on iOS, EncryptedSharedPreferences on Android), only if you sign in
- UMP consent choices (only for users in the EU/EEA/UK/Switzerland)
On our server (only if the relevant feature is enabled):
- FCM token, monitoring point (lat/lng), alert radius, language, and the timestamp of the last update — a single row per app install, updated when you change settings.
- Device location history (lat/lng + timestamp), only for moves >200 m, with a maximum 30-day retention.
- List of incidents already notified to you in the last 7 days, to prevent repetition. Removed automatically after that window.
- User account (subject id, optional email, display name, reputation score) — only if you sign in.
- Citizen reports you submit, including location, description, type, photos (without EXIF) and creation timestamp. Kept until you resolve, delete or operators reject them; 30 to 90 days afterwards they are marked removed and any associated personal data is anonymised.
The device record is deleted from the server as soon as you disable Incident alerts or the FCM token becomes invalid (for example, when reinstalling the app). The user account is deleted when you request its removal under Settings → Account → Delete account.
7. Notifications
Alerta uses two notification paths:
- Local notifications: When the app is open and has location permission, it generates notifications locally when an incident appears within your radius. Already-notified IDs are persisted on-device to prevent duplicates even after restarting the app. No server involved.
- Incident alerts (push, opt-in): Our server polls the public ANEPC data every few minutes. When it detects a new incident inside the radius you registered, it sends a push notification to your device via Firebase Cloud Messaging and Apple Push Notification service. This lets you receive alerts even when the app is closed.
You can disable either path at any time in the app's Settings or in your operating system's settings.
8. Children's Privacy
Alerta does not knowingly collect any personal information from children under 13. The app does not require any personal information to function, and the optional sign-in feature is subject to the age restrictions of the Apple/Google identity providers.
9. Your Rights
You can:
- Deny or revoke location permissions at any time in your operating system's settings
- Disable notifications in your operating system's settings or within the app
- Sign out or permanently delete your account in Settings → Account
- Resolve, delete, or flag any of your own citizen reports
- Review or change your advertising consent choices in Settings → About → Manage privacy choices (EU/EEA/UK/Switzerland users only)
- Delete the app to remove all locally stored data
- Request a copy or deletion of your data by contacting us at the email in section 12 (in line with GDPR)
10. Changes to This Policy
We may update this Privacy Policy from time to time. Changes will be posted on this page with an updated revision date.
11. App Store Compliance
Alerta is available on the Apple App Store and the Google Play Store. It complies with Apple's App Store Guidelines and the Google Play Developer Programme Policies, including their privacy, data-handling and advertising sections.
12. Contact
If you have questions about this Privacy Policy, please contact:
Walter Tengler
Email: walter.tengler@gmail.com