Skip to main content
O SDK 2.0 autentica com um token de licença. Plataformas nativas também podem usar appId + appKey para autenticação online. A Web nunca deve incorporar appKey no JavaScript do frontend.
Conclua primeiro a Assinatura: vincule os identificadores do app no Console (Bundle ID / nome do pacote / domínio) e ative um plano.

Nativo (Android / iOS / macOS / Windows / Linux / Flutter)

Passe um dos seguintes ao criar o mecanismo: Prioridade: se licenseToken não estiver vazio, o SDK valida esse token localmente e não chama a rede com appId / appKey.
Recomendado (mesma ideia da Web): mantenha appId / appKey no seu servidor, gere um licenseToken de curta duração e entregue-o ao app. Defina platform na requisição assinada para corresponder ao cliente (ios / android / macos / windows / linux). Veja Web → Proxy no servidor abaixo. appId + appKey direto e .lic offline continuam suportados.
iOS / macOS
Android
C++ (Windows / Linux)
Flutter
Alternativa online nas plataformas nativas:
Prefira enviar o .lic offline como asset do app e carregá-lo em runtime em vez de hardcoded no código-fonte. Como obter um: Licença offline abaixo.

Web

O SDK do navegador não tem campos appId / appKey. O mecanismo aceita apenas licenseToken e o verifica localmente. Busque o token no seu servidor antes de init().

Fluxo recomendado

  1. Crie um app no Console, vincule o domínio Web e copie appId / appKey (veja Assinatura)
  2. Mantenha as chaves no seu backend; exponha um endpoint (por exemplo POST /api/facebetter/auth)
  3. Seu backend assina uma requisição para https://facebetter.pixpark.net/facebetter/v2/auth e devolve o corpo bruto da resposta à página
  4. Passe essa string para EngineConfig.licenseToken e, em seguida, chame init()
O demo oficial (demo/web/react) usa o mesmo padrão: frontend em src/fetchLicenseToken.js, proxy do servidor em api/facebetter/auth.js.
Não coloque appKey em um bundle de frontend. A Web não suporta arquivos .lic offline. Tokens online expiram em minutos — busque um novo antes de criar o mecanismo novamente.

Frontend

Proxy no servidor (exemplo Node)

Armazene FB_APP_ID / FB_APP_KEY em variáveis de ambiente. Coloque isto no Express / Fastify / uma função serverless:
Em outras linguagens, implemente os mesmos passos: montar a string de assinatura → HMAC-SHA256 (hex) → POST ao upstream → entregar o corpo ao frontend. Referência executável: GitHub Demo api/facebetter/auth.js.

Campos da requisição upstream

Em caso de sucesso, o upstream devolve JSON (incluindo um campo token). Você pode encaminhar o texto da resposta como está ou extrair apenas a string token — o SDK aceita os dois.

Licença offline (nativo)

O Console não oferece mais download self-serve de .lic offline. Para obter uma licença offline, fale com vendas ou um administrador: Depois de receber o arquivo, passe o conteúdo inteiro como licenseToken / license_token. A validade acompanha sua assinatura atual; após renovar ou alterar o plano, solicite um arquivo novo e substitua-o no app.

Observações

  • A licença offline está vinculada aos identificadores do app configurados no Console; uma divergência falha na validação.
  • Não expirada: os recursos seguem o plano de assinatura.
  • Expirada: o mecanismo ainda pode inicializar, mas as capacidades voltam ao plano Free (teste com marca d’água, sem callbacks de pontos-chave). Renove e solicite uma nova licença.
  • A Web não pode usar licenças offline; precisa concluir um caminho de autenticação online v2.

Eventos do mecanismo

Escute resultados de licença e inicialização via onEngineEvent / Flutter engine.events: