
Publicação de aplicativos móveis da Solana: um guia prático
As lojas de aplicativos nunca foram favoráveis aos desenvolvedores de aplicativos de cripto. As diretrizes da Apple App Store proíbem o uso de criptomoedas em compras dentro do aplicativo e impõem uma comissão de 30% sobre pagamentos feitos pela Apple. Os desenvolvedores também enfrentam a proibição de incentivos no aplicativo concedidos por meio de blockchain. Por isso, poucos desenvolvedores independentes lançam dApps móveis. O Solana Saga transforma o setor de dApps móveis ao apresentar a loja de dApps — uma loja de aplicativos descentralizada e sem taxas que permite microtransações sem políticas restritivas. A Solana Mobile oferece aos desenvolvedores a oportunidade de criar dApps e publicá-las na loja de dApps sem os atritos e custos associados às lojas de aplicativos tradicionais.
Enquanto isso, os usuários continuam recebendo recompensas e aproveitando benefícios exclusivos do Saga. Uma nova dApp foi publicada na loja de dApps: a Chonky dApp. Desenvolvida com a Helius, a dApp foi baixada em mais de 7.500 dispositivos únicos pela loja de dApps nas primeiras doze horas. Disponível somente na loja de dApps, a Chonky dApp permite que os usuários reivindiquem uma parte de Chonky ao se conectarem com uma carteira Saga Genesis.
Publicado na loja de dApps em menos de uma semana, este guia foi testado e validado pela Chonky. Conheça o processo de publicação de uma dApp móvel da Solana, desde a preparação dos materiais até o envio para a loja de dApps. Este guia ajuda os desenvolvedores a entender os requisitos do processo de publicação e estimar um cronograma para definir expectativas razoáveis.
Materiais
Siga o guia e reúna os materiais necessários para a publicação, com o objetivo de gerar um Android Package Kit (APK) pronto para lançamento. Veja a seguir uma lista dos materiais que você precisa reunir e preparar para as etapas de publicação.
Lista de verificação
- Build pronto para lançamento
- Android Build Tools
- Informações da versão
- Ferramentas de relatório de erros, como o Sentry
- Recursos da dApp e da loja de dApps
- URL RPC da Helius
- Chave de assinatura do aplicativo
- Chave do publicador
- Termos e contratos
- Licença
- Política de privacidade
- Direitos autorais
Ao publicar em lojas de aplicativos, há termos e condições para o publicador e o consumidor. Isso é importante para proteger os usuários e limitar a responsabilidade dos publicadores. Antes de publicar, os publicadores da loja de dApps da Solana concordam com a política do publicador, o contrato de publicação de dApps e os termos de uso da loja de dApps.
O publicador deve fornecer um contrato de licença de usuário final (EULA), uma política de privacidade e um aviso de direitos autorais durante o processo de publicação. Como desenvolvedor, obtenha esses documentos e disponibilize-os online — os links para eles serão necessários no processo de publicação. Consulte recursos como geradores de políticas de privacidade e modelos de aviso de direitos autorais, ou use o ChatGPT para gerar os documentos.
Preparação
A preparação de uma dApp para o lançamento começa com um build configurado para produção.
Primeiro, organize o repositório. Remova os logs do console e use ferramentas de relatório de erros para monitorar a dApp. As variáveis de ambiente também precisam ser revisadas e atualizadas para o ambiente de produção.
Não coloque chaves secretas no arquivo .env!
Em seguida, confirme se todos os recursos estão no tamanho correto e remova os arquivos desnecessários. As imagens de pré-visualização da loja de dApps precisam ter resolução de 1080p (1920px por 1080px) e devem ser todas horizontais ou todas verticais. Para os ícones da loja de dApps, o tamanho máximo é 512x512px, e o arquivo deve ser quadrado.
Para publicar na loja de dApps, é necessário um par de chaves da Solana. Gere um novo par de chaves com solana-keygen e adicione fundos em Solana para usar posteriormente. Mantenha esse par de chaves seguro. Caso contrário, qualquer pessoa que tenha acesso a ele poderá enviar versões posteriores da dApp para a loja de dApps.
Ao criar aplicativos para lançamento, uma chave do aplicativo deve assinar o build. Novos aplicativos exigem novas chaves de assinatura; não use a mesma chave de depuração. Assim como ocorre com a chave de publicação, qualquer pessoa que tenha a chave do aplicativo pode atualizá-lo. Abra um terminal e cole o comando a seguir para gerar a chave de assinatura do aplicativo usando keystore.
keytool -genkey -v -keystore release-key.keystore -alias alias_name -keyalg RSA -keysize 2048 -validity 10000Crie release-key.keystore e storePassword (que também funciona como keyPassword) no diretório atual. Use o exemplo de código a seguir para criar signingConfigs e buildTypes de lançamento em build.gradle.
signingConfigs {
release {
storeFile file('release.keystore')
storePassword 'password'
keyAlias 'release-key'
keyPassword 'password'
}
}
buildTypes {
debug {
signingConfig signingConfigs.debug
}
release {
signingConfig signingConfigs.release
minifyEnabled enableProguardInReleaseBuilds
proguardFiles getDefaultProguardFile("proguard-android.txt"), "proguard-rules.pro"
debuggable false
}
}No mesmo arquivo, defina o locale(s) do aplicativo e atualize versionCode e versionName. Esta é a última oportunidade para alterar applicationId.
Com a assinatura de lançamento configurada, a dApp está pronta para o build de produção. No diretório da dApp, execute o comando a seguir para remover recursos duplicados da depuração e preparar o lançamento.
Se for bem-sucedido, o comando gerará um APK na pasta /android/app/build/outputs/apk.
yarn react-native bundle --platform android --dev false --entry-file index.js --bundle-output android/app/src/main/assets/index.android.bundle --assets-dest android/app/build/intermediates/res/merged/release/ && rm -rf android/app/src/main/res/drawable-* && rm -rf android/app/src/main/res/raw/* && cd android && ./gradlew assembleRelease && cd ..Etapas de publicação
A publicação na loja de dApps exige o uso das ferramentas CLI da loja. Esta seção resume as etapas de configuração da Solana Mobile para publicar na loja de dApps:
- Instale as ferramentas CLI da loja de dApps.
- Crie e valide
config.yaml. - Emita os NFTs de aplicativo, publicador e versão.
- Envie e publique.
No diretório de publicação, execute os seguintes comandos:
pnpm init
pnpm install --save-dev @solana-mobile/dApp-store-cli
npx dApp-store initO comando de inicialização criará um arquivo config.yaml. Ele é usado para configurar como a dApp aparecerá na loja de dApps. Há três seções para preencher: publisher, app e release.
Todas essas seções têm um campo de endereço que deve permanecer em branco na versão inicial. As etapas de publicação criarão NFTs para cada seção e atualizarão os endereços automaticamente.
Esta é uma referência em branco de config.yaml, e você pode encontrar uma versão já preenchida no GitHub de dapp-publishing.
publisher:
name:
address:
website:
email:
media:
- purpose: icon
uri:
app:
name:
address:
android_package:
urls:
license_url:
privacy_policy_url:
copyright_url:
website:
media:
- purpose: icon
uri:
release:
address:
media:
- purpose: icon
uri:
- purpose: screenshot
uri:
- purpose: screenshot
uri:
- purpose: screenshot
uri:
files:
- purpose: install
uri:
catalog:
en-US:
name:
short_description:
long_description:
new_in_version:
saga_features:
solana_mobile_dApp_publisher_portal:
google_store_package:
testing_instructions:A seção de lançamento pode ser modificada para novas atualizações do aplicativo. Preencha os campos de mídia para exibir imagens de pré-visualização e ícones na loja de dApps. É necessário informar o caminho do APK para instalar o arquivo. Coloque esses arquivos no repositório de publicação e forneça os caminhos relativos como URI. As descrições do aplicativo podem ser editadas no catálogo, e campos como google_store_package e saga_features são opcionais.
Depois de preencher config.yaml, verifique a validade da publicação usando o comando a seguir com o caminho do par de chaves da Solana e do Android Build Tools.
Se o Android Build Tools tiver sido instalado com o Android Studio, você poderá encontrar o caminho abrindo o Android Studio, clicando no menu suspenso Tools e selecionando SDK Manager.
Acesse a guia SDK Tools e clique em Android_SDK_Build_Tools 34 para exibir o caminho das ferramentas de build. O caminho deve ser semelhante a este: C:\Users\user\AppData\Local\Android\Sdk.
npx dApp-store validate -k path_to_keypair -b path_to_android_sdk_build_toolsPara publicar na loja de dApps, são criados NFTs para cada seção de config.yaml
Comece criando o NFT do publicador. Essa é uma operação única, portanto essa etapa não será necessária em versões futuras. Substitua mainnet_beta_rpc_url por uma URL RPC da Helius.
npx dApp-store create publisher -k path_to_your_keypair -u mainnet_beta_rpc_urlA criação do NFT do aplicativo também é feita com um comando executado apenas uma vez. Esse comando criará o NFT do aplicativo e registrará o endereço de emissão em config.yaml.
npx dApp-store create app -k path_to_keypair -u mainnet_beta_rpc_urlUse o comando a seguir para criar o NFT da versão. Um novo NFT da versão deve ser criado quando uma nova versão for enviada à loja de dApps. O endereço de emissão é atualizado automaticamente sempre que o comando é executado.
npx dApp-store create release -k path_to_keypair -b path_to_android_sdk_build_tools -u mainnet_beta_rpc_urlQuando os três NFTs forem criados com sucesso, o aplicativo estará pronto para ser enviado à loja de dApps.
Publique usando o comando abaixo e informe as flags --requestor-is-authorized --complies-with-solana-dApp-store-policies para confirmar a conformidade.
npx dApp-store publish submit -k path_to_keypair -u mainnet_beta_rpc_url --requestor-is-authorized --complies-with-solana-dApp-store-policiesDepois que a dApp for enviada à loja de dApps, a equipe da Solana Mobile entrará em contato pelo endereço de e-mail usado na seção do publicador. Como alternativa, entre em contato com a equipe da Solana Mobile no canal #dapp store. Os prazos comuns de análise são de dois a três dias para o envio de novos aplicativos e de um dia para atualizações.
Considerações após o lançamento
Publicar na loja de dApps pode parecer intimidador para quem faz isso pela primeira vez, mas as ferramentas certas tornam o processo simples. No lançamento da Chonky dApp, além de problemas específicos de dispositivos móveis, como modais de carteira que não funcionavam nos modos de baixo consumo/economia de bateria e usuários impacientes que cancelavam a solicitação de assinatura, os usuários do Saga conseguiram reivindicar o airdrop na primeira tentativa. O registro de erros mostra sua importância assim que a dApp entra no ar, monitorando erros em tempo real e registrando o comportamento dos usuários. Use ferramentas de registro para obter informações importantes sobre o uso. No momento, a Solana Mobile não coleta dados como visualizações e downloads de aplicativos. Portanto, cabe ao desenvolvedor implementar o registro adequado no aplicativo.
Criar para dispositivos móveis significa colocar o usuário em primeiro lugar. Do design de UX aos fluxos de assinatura, os desenvolvedores mobile trabalham para oferecer uma experiência integrada e fluida ao navegar por interfaces digitais. Em um mundo onde a atenção é escassa, os aplicativos buscam conquistar um espaço na tela inicial do usuário. Devido às políticas restritivas de publicação das lojas de aplicativos populares, poucos aplicativos conseguem levar experiências de cripto recompensadoras para dispositivos móveis. A tecnologia blockchain da Solana permite recompensar usuários em massa, e a Solana Mobile está bem posicionada para liderar a forma como as pessoas interagem com aplicativos nativos de cripto. Com o Saga Chapter 2 previsto para 2025, agora é o momento ideal para criar dApps para a loja de dApps da Solana.
Se esta receita inspirou você a preparar uma dApp única, assine o blog da Helius e confira os artigos educacionais para desenvolvedores da Solana. Tem um Saga e quer começar a desenvolver com o Solana Mobile Stack? O tutorial Controle de acesso por tokens na Solana Mobile é ótimo para acompanhar se você é um desenvolvedor Android iniciante familiarizado com Typescript. Participe da Helius Hacker Society no Discord e acompanhe mais conteúdos para desenvolvedores mobile na Solana. A Helius está à disposição para ajudar com qualquer dúvida no fórum da Helius.
Recursos adicionais
- Configuração do ambiente de desenvolvimento móvel para Android
- Referência do Mobile Wallet Adapter
- SDK da Solana para React Native
- Arquitetura de dApps móveis
- Prepare seu aplicativo para o lançamento
- Android Studio
- Repositório no GitHub para publicação de dApps da Solana Mobile
- Documentação de publicação de dApps da Solana Mobile
- Especificações de publicação na loja de dApps
- Discord da Solana Mobile
Artigos relacionados
Assine a Helius
Acompanhe as novidades mais recentes do desenvolvimento Solana e receba atualizações quando publicarmos


