Política de Privacidade
Esta é uma tradução. Em caso de divergência, vale a versão em inglês. English
O ColorWander ("nós", "o app") é desenvolvido por um desenvolvedor independente, Zhenghao Chen (陈正豪, [email protected]). As fotos são processadas inteiramente no seu aparelho. As solicitações para fora do aparelho limitam-se a: consultas de geocodificação reversa que convertem a coordenada GPS de uma foto em um nome de lugar, estatísticas de uso anônimas (sem dados pessoais, sem fotos — veja abaixo; você pode desativá-las em Settings → About (Ajustes → Sobre)) e os serviços da própria Apple (StoreKit, Fotos do iCloud). Sem contas, sem SDKs de rastreamento, sem identificadores de publicidade.
Resumo
| O quê | Onde |
|---|---|
| Dados de pixel da sua foto | Somente no aparelho |
| Data e hora de captura (EXIF) | Somente no aparelho |
| Coordenada GPS (EXIF) | Enviada ao geocodificador da Apple; se a Apple demorar ou falhar, também ao nosso proxy baseado no OpenStreetMap |
| Status da assinatura | StoreKit da Apple (keychain do sistema) |
| Preferências (idioma, aparência) | UserDefaults, no aparelho |
| Cartões salvos e os originais a partir dos quais foram criados | Documents/photos/ em sandbox, no aparelho |
| Estatísticas de uso anônimas | anônimas; desativáveis em Settings → About |
O que lemos do seu aparelho
- Fotos que você escolhe — Quando você escolhe uma foto por meio do
PHPickerViewController, o app lê seus dados de pixel, a data e hora de captura (EXIF) e a coordenada GPS (se houver) para montar o cartão. Os dados de pixel nunca são enviados para fora do aparelho. - Metadados EXIF — A data e hora de captura permanecem no aparelho. As coordenadas GPS são usadas para obter o nome de uma cidade para a legenda (veja abaixo).
- Classificador de cenas do Vision (somente no aparelho) — Quando uma foto não tem localização utilizável, o modelo
Visionincluído pela Apple classifica a cena (por exemplo, "praia", "ambiente interno") no próprio aparelho para sugerir um rótulo alternativo. Nem a foto nem o rótulo saem do seu aparelho. - Movimento e áudio de Live Photos — Quando você escolhe uma Live Photo e opta por exportá-la como Live Photo, o AVFoundation lê no aparelho o movimento original (vídeo associado) e a faixa de áudio, combina-os com o quadro do cartão que você criou e grava o resultado de volta na sua biblioteca de Fotos. Os dados de pixel, as amostras de áudio e a Live Photo resultante nunca saem do seu aparelho.
O que enviamos para fora do aparelho
- CLGeocoder da Apple — Sempre que a foto escolhida tiver GPS no EXIF, sua coordenada é enviada ao geocodificador da Apple para ser convertida em um nome de lugar (e novamente se você alterar o idioma do nome do lugar). Isso ocorre mesmo que você oculte a legenda posteriormente. O ColorWander recebe apenas o texto resultante. A solicitação passa pelo SDK padrão da Apple, pelo canal seguro da Apple.
- OpenStreetMap Nominatim, por meio do nosso proxy — Se o geocodificador da Apple não responder em cerca de um segundo (o que é comum em algumas redes da China continental), a mesma coordenada também é enviada ao nosso proxy HTTPS em
geo.bryantchen.cc/reverse, que a encaminha ao serviço de geocodificação reversa do OpenStreetMap (nominatim.openstreetmap.org) e armazena em cache respostas por curto período para respeitar a política de uso do Nominatim. É utilizada a primeira resposta utilizável. São enviados apenas a coordenada, o idioma solicitado e um User-Agent que identifica o app — nenhuma foto, nenhum identificador, nenhum ID de conta. - Estatísticas de uso anônimas — O app envia um pequeno conjunto de eventos anônimos de interação com o produto (por exemplo,
app_open,onboarding_completed,paywall_shown,export_completed,export_failed) ao nosso processador de análise, PostHog (us.i.posthog.com), para que possamos entender quais recursos são usados e melhorar o app. Cada evento contém: um UUID aleatório por instalação (não é o seu Apple ID nem o identificador de publicidade — ele é redefinido se você reinstalar o app), a versão do app, a versão do iOS, o modelo do aparelho, o idioma do app e campos específicos do evento, como o nome do layout, o ponto de entrada da tela de assinatura (paywall) ou — quando uma exportação falha — um breve motivo técnico do erro (um código de erro e uma mensagem do iOS). Nenhuma foto, nenhuma legenda que você digita, nenhum nome, nenhum e-mail, nenhuma localização precisa, nada que identifique você. Você pode desativar isso a qualquer momento em Settings → About → "Share anonymous usage data" (Ajustes → Sobre → "Compartilhar dados de uso anônimos") — a desativação também exclui quaisquer eventos enfileirados e ainda não enviados no seu aparelho. Para solicitar a exclusão de eventos anônimos já enviados, envie-nos por e-mail o identificador exibido em diagnósticos futuros ou simplesmente registre sua solicitação — como os dados são anônimos, faremos a exclusão na medida do possível. - Fotos do iCloud — Se o original de uma foto que você escolher estiver armazenado no iCloud, o iOS o baixa da Apple para que o app possa utilizá-lo.
- App Store / StoreKit 2 — Compras, restaurações e verificações do status da assinatura são processadas pelo StoreKit integrado do iOS. Não operamos servidor de compras próprio. O ColorWander observa os objetos de transação emitidos pela Apple para determinar o seu plano; a cadeia de verificação é inteiramente da Apple. Suas informações de pagamento são tratadas pela Apple — nós nunca temos acesso a elas.
O que NÃO coletamos
- Nenhuma conta ou login. Nenhum cadastro por e-mail, nenhum ID de conta, nenhuma senha.
- Nenhum SDK de rastreamento. Nenhum identificador de publicidade (IDFA), nenhuma impressão digital do aparelho (fingerprinting), nenhum rastreamento entre apps. As estatísticas de uso (acima) são enviadas por um módulo de envio próprio, de cerca de 200 linhas — nenhum SDK de terceiros é incorporado.
- Nenhuma coleta de conteúdo. Suas fotos, legendas e cartões nunca são enviados. Os eventos de análise descrevem ações (por exemplo, "um cartão foi exportado com o layout de selo"), nunca conteúdo.
- Nenhum relator de falhas. Não coletamos registros de falhas (crash logs). A única informação de erro que recebemos é o breve motivo de falha de exportação incluído nas estatísticas anônimas acima.
- Nenhuma localização em tempo real. Não solicitamos o
CoreLocatione nunca lemos o GPS atual do seu aparelho — apenas o GPS que já está gravado no EXIF de uma foto.
Permissões que solicitamos
| Permissão | Finalidade |
|---|---|
| Biblioteca de Fotos (leitura) | Ler a foto que você escolhe para montar o cartão. |
| Biblioteca de Fotos (adição) | Salvar o cartão exportado de volta no app Fotos. |
Você pode alterá-las a qualquer momento em Ajustes do iOS → ColorWander.
Armazenamento local
- Os cartões salvos (JPEG ou PNG) ficam no diretório em sandbox
Documents/photos/do app, junto com uma cópia local da foto original a partir da qual cada cartão foi criado, para que você possa editá-lo novamente mais tarde. Essa cópia mantém os metadados da própria foto (como data e hora de captura e GPS). - Um pequeno arquivo de metadados JSON (
history.json) armazena, por cartão, o texto da legenda, o nome do layout, as cores, a data e hora de captura, a proporção, o nome do lugar e o identificador da foto original na biblioteca de Fotos e o nome do arquivo, para que o cartão possa ser editado novamente. - As preferências (
appLanguage,appAppearance,hasSeenOnboardinge um cache da assinatura) ficam emUserDefaults. - O estado do direito de acesso da assinatura também é mantido pelo StoreKit da Apple por meio do keychain do sistema.
Para excluir tudo isso, desinstale o app — o iOS remove junto o sandbox e as entradas de UserDefaults. O estado da assinatura no StoreKit fica vinculado ao seu Apple ID e pode ser gerenciado em Ajustes → [seu Apple ID] → Assinaturas.
Crianças
O ColorWander tem classificação 4+ e não coleta conscientemente nenhum dado pessoal de ninguém, inclusive de crianças. Não há coleta de dados que exija restrição por idade.
Conteúdo de terceiros
Os recursos incluídos no app (fontes, dados geográficos, corpus literário) são arquivos estáticos. Eles não se comunicam com servidores externos. As atribuições de licença constam tanto nos Termos de Serviço quanto em Settings → About → Acknowledgements (Ajustes → Sobre → Agradecimentos) dentro do app.
Alterações
Se esta política mudar de forma relevante — por exemplo, se adicionarmos um novo fluxo de dados para fora do aparelho —, a data no topo será atualizada e a mudança será destacada em uma nota de versão.
Contato
Dúvidas ou preocupações: [email protected]