Pular para o conteúdo
supastack
Explorar a documentação

For AI agents: fetch the complete documentation index at /llms.txt, the full documentation corpus at /llms-full.txt, the agent skill at /skill.md, or this page as Markdown at /pt/docs/mobile/external-accounts.md (or send Accept: text/markdown).

Criar as contas mobile

Contas Expo, Apple, Google Play e RevenueCat — para que serve cada uma e quando criá-la.

Quando precisa delas

A configuração mobile do dia a dia não precisa de nenhuma: Expo Go mais um backend a correr — EXPO_PUBLIC_API_URL em apps/mobile/.env.local — cobre a pré-visualização de ecrãs e o teste do início de sessão.

Crie estas contas quando for além do Expo Go: uma conta Expo alimenta os builds na nuvem do EAS, as contas das lojas permitem a submissão, a RevenueCat verifica as compras nativas, e o programa Apple também é exigido para Sign in with Apple durante a revisão da loja. Duas custam dinheiro: Apple Developer custa 99 $ por ano, Google Play é um registo único de 25 $; Expo e RevenueCat têm ambos free tiers.

Expo e EAS

1. Abra expo.dev → Sign up, crie a conta e confirme o e-mail.

2. Num terminal, execute npx eas-cli@latest login e introduza as mesmas credenciais — eas é a ferramenta de linha de comandos para builds e submissões dos Expo Application Services.

3. A partir da pasta apps/mobile, execute npx eas-cli@latest init para ligar o código a um projeto EAS; escreve o ID de projeto na configuração app.json/app.config.ts. Os perfis de build eas.json já vêm incluídos.

Esperado: npx eas-cli@latest whoami imprime o nome da sua conta e o projeto aparece no seu painel expo.dev.

npx eas-cli@latest login
cd apps/mobile
npx eas-cli@latest init
npx eas-cli@latest whoami

O programa Apple Developer

1. Abra developer.apple.com → Account → inscreva-se no Apple Developer Program — 99 $ por ano; a adesão individual serve.

2. A inscrição exige um ID Apple com autenticação de dois fatores ativa e um nome legal correspondente ao seu método de pagamento; a aprovação pode demorar um ou dois dias.

3. Esta única conta cobre dois requisitos: submeter a app iOS à App Store e Sign in with Apple — a App Review exige-o sempre que uma app iOS inclui login social de terceiros como Google ou GitHub. O kit liga-o através de AUTH_APPLE_ENABLED mais o par APPLE_CLIENT_ID/APPLE_CLIENT_SECRET no backend.

A mesma adesão cobre também a assinatura de desktop macOS — o guia de contas de desktop explica esse lado.

A Google Play Console

1. Abra play.google.com/console, pague o registo único de 25 $ e crie a conta de programador em seu nome ou no da empresa.

2. Pare na conta de programador por agora — a ficha da app em si cria-se dentro da Play Console durante a submissão: o primeiro upload de uma app nova acontece sempre manualmente aí, e o eas submit assume a partir da segunda release.

RevenueCat — só se a app vende conteúdo

Salte esta secção por completo se a app mobile não vende conteúdo digital nem assinaturas. Se vende: 1. abra revenuecat.com e crie uma conta gratuita, 2. crie um projeto, 3. registe dentro dele a app iOS (liga-se ao App Store Connect) e a app Android (nome do pacote Play mais credenciais de serviço).

4. Crie os produtos e um entitlement que corresponda aos seus produtos de loja — o kit verifica o entitlement configurado (REVENUECAT_ENTITLEMENT_ID, REVENUECAT_ENTITLEMENT_KEY) no servidor antes de conceder acesso.

5. Copie a chave SDK pública de cada plataforma para apps/mobile/.env.local e ative o provedor nos dois lados, como abaixo. As chaves SDK são valores públicos de cliente; REVENUECAT_SECRET_API_KEY e REVENUECAT_WEBHOOK_AUTHORIZATION são apenas do servidor e pertencem ao ambiente do backend — nunca numa variável EXPO_PUBLIC_.

# apps/mobile/.env.local
EXPO_PUBLIC_MOBILE_PURCHASES_PROVIDER=revenuecat
EXPO_PUBLIC_REVENUECAT_IOS_API_KEY=your-public-ios-sdk-key
EXPO_PUBLIC_REVENUECAT_ANDROID_API_KEY=your-public-android-sdk-key

# apps/web/.env.local — server side
MOBILE_PURCHASES_PROVIDER=revenuecat
REVENUECAT_SECRET_API_KEY=your-secret-api-key
REVENUECAT_WEBHOOK_AUTHORIZATION=your-webhook-auth-value

Provedores de início de sessão no mobile

O início de sessão mobile reutiliza as mesmas OAuth apps da Google e do GitHub que cria para a web — os callbacks continuam a ser {APP_URL}/api/auth/callback/<provider> porque o Better Auth trata do lado do servidor, e a app regressa através do seu esquema de deep link EXPO_PUBLIC_APP_SCHEME. Não é preciso nenhuma app de provedor extra só porque o cliente é nativo.

A exceção é a revisão da loja iOS: lançar botões de Google ou GitHub no iOS exige oferecer também Sign in with Apple — é por isso que a conta Apple Developer acima duplica como dependência de início de sessão.

O que significa «concluído»

Verifique cada conta antes de continuar: npx eas-cli@latest whoami imprime a sua conta Expo e o projeto aparece no painel; a adesão Apple Developer indica Active; a conta Play Console existe; o projeto RevenueCat lista as duas apps de loja com produtos e um entitlement, e as suas chaves estão nos ficheiros env corretos.

Depois continue pela ordem — ligar o projeto, configurar as compras se a app vende conteúdo, compilar para um dispositivo, submeter:

Para continuar a configuração, leia Configuração EAS.

Perguntas frequentes

14 perguntas

O que é o supastack?

O supastack é uma base modular para construir produtos SaaS com IA. Reúne a infraestrutura comum para que possas concentrar-te nas funcionalidades próprias do teu produto.

Suporta web e mobile?

Sim. O supastack inclui apps Next.js e Expo como pontos de partida para experiências web e mobile.

Que autenticação está incluída?

O Better Auth cobre email/palavra-passe, OTP e login social. Os workspaces pessoais são aprovisionados com a conta para que os registos fiquem delimitados desde o primeiro dia.

Como é suportada a IA?

O supastack inclui IA multi-fornecedor configurável, registo de utilização, orçamentos e suporte encriptado de chaves próprias (BYOK).

Como são geridas as subscrições?

Para produtos construídos sobre o kit, a faturação Stripe, as subscrições e as permissões formam a base do acesso pago. Os segredos de fornecedor ficam no servidor.

Onde vive o código próprio do meu produto?

As funcionalidades próprias do produto ficam num codebase separado, enquanto o produto configura e integra os módulos base do supastack.

Como funciona o preço do supastack?

O kit é uma compra única com atualizações vitalícias: Uma framework por 249 $ (preço de lançamento temporário — 100 $ de desconto sobre o preço normal de 349 $) ou Todas as frameworks (Next.js, iOS, Android) por 499 $ (preço de lançamento temporário — 100 $ de desconto sobre o preço normal de 599 $), mais 75 $ por lugar de programador adicional. Sem subscrição do kit. O checkout neste site entrega a tua chave de licença por email, com acesso ao repo por convite GitHub.

Como é que os workspaces delimitam os meus dados?

Os registos do utilizador são delimitados por workspaceId. Identidade, permissões, utilização de IA, eventos de faturação e entradas de auditoria ficam dentro do limite do workspace pessoal.

Como funcionam os jobs em segundo plano?

O Trigger.dev é o runtime de jobs explícito. O contrato JobRunner só promete enqueue, status e cancel — a semântica de workflow permanece específica e explícita do Trigger.dev.

Como difere o email da divulgação?

O email transacional cobre fluxos de produto como avisos de conclusão de tarefas. A divulgação fria e as campanhas pertencem ao próprio produto, fora do módulo de email deste kit.

Como funcionam as compras no aplicativo móvel?

O aplicativo móvel inclui compras nativas e restauração via RevenueCat, com acesso verificado pelo servidor. Configure as contas das lojas e conclua os testes em dispositivos antes de publicar. A cobrança web permanece separada.

Onde residem as chaves dos fornecedores de IA?

As credenciais BYOK são encriptadas e ficam no servidor. As chaves são higienizadas nos logs; a utilização e os orçamentos ficam visíveis ao nível do workspace.

Quais métodos de pagamento o checkout aceita?

O checkout hospedado na Stripe aceita cartões e também pode oferecer Alipay e WeChat Pay quando essas carteiras estiverem ativadas na conta Stripe — útil para compradores na China. As autorizações de carteira são confirmadas de forma assíncrona, então a página da licença é atualizada assim que o pagamento é liquidado.

Posso solicitar um reembolso?

Depois de obter acesso ao repositório, o supastack é seu para sempre, portanto não pode ser reembolsado. Mas fique tranquilo: você recebe o código-fonte completo com atualizações vitalícias para criar e lançar produtos ilimitados para você ou seus clientes. Você apenas não pode revender o código nem redistribuir o repositório como starter kit ou modelo.

PT
Tema