
Publicar aplicaciones móviles de Solana: guía práctica
Las tiendas de aplicaciones nunca han sido amigables con quienes publican aplicaciones de criptomonedas. Las directrices de Apple App Store prohíben usar criptomonedas para compras dentro de la aplicación e imponen una comisión del 30 % sobre los pagos realizados a través de Apple. Los desarrolladores también están limitados por la prohibición de ofrecer incentivos dentro de la aplicación mediante blockchain. Por estos motivos, pocos desarrolladores independientes lanzan dApps móviles. Solana Saga transforma el sector de las dApps móviles con la tienda de dApps: una tienda de aplicaciones descentralizada y sin comisiones que permite microtransacciones sin políticas restrictivas. Solana Mobile brinda a los desarrolladores la oportunidad de crear dApps y publicarlas en la tienda de dApps sin las dificultades ni los costos asociados con las tiendas de aplicaciones tradicionales.
Mientras tanto, los usuarios siguen obteniendo recompensas y disfrutando de ventajas exclusivas de Saga. Se ha publicado una nueva dApp en la tienda de dApps: Chonky dApp. La dApp, impulsada por Helius, se descargó en más de 7,500 dispositivos únicos desde la tienda de dApps durante las primeras doce horas. Disponible únicamente en la tienda de dApps, Chonky dApp permite a los usuarios reclamar una parte de Chonky cuando se conectan con una billetera Saga Genesis.
Esta guía, que permitió publicar en la tienda de dApps en menos de una semana, fue probada y validada por Chonky. Conoce el proceso para publicar una dApp de Solana Mobile, desde la preparación de materiales hasta el envío a la tienda de dApps. Esta guía busca ayudar a los desarrolladores a entender los requisitos del proceso de publicación y calcular un cronograma que les permita establecer expectativas razonables.
Materiales
Sigue la guía y reúne los materiales necesarios para publicar, con el objetivo de generar un paquete de Android (APK) listo para el lanzamiento. La siguiente lista incluye los materiales que debes reunir y preparar para completar los pasos de publicación.
Lista de verificación
- Compilación lista para el lanzamiento
- Android Build Tools
- Información de la versión
- Herramientas de seguimiento de errores como Sentry
- Recursos de la dApp y de la tienda de dApps
- URL RPC de Helius
- Clave de firma de la aplicación
- Clave del publicador
- Términos y acuerdos
- Licencia
- Política de privacidad
- Derechos de autor
Al publicar en tiendas de aplicaciones, existen términos y condiciones para el publicador y el consumidor. Son importantes para proteger a los usuarios y limitar la responsabilidad de los publicadores. Antes de publicar, quienes publican en la tienda de dApps de Solana aceptan la política para publicadores, el acuerdo de publicación de dApps y los términos de uso de la tienda de dApps.
Durante el proceso de publicación, el publicador debe proporcionar un acuerdo de licencia de usuario final (EULA), una política de privacidad y un aviso de derechos de autor. Como desarrollador, debes obtener estos documentos y publicarlos en línea, ya que necesitarás sus enlaces durante el proceso de publicación. Consulta recursos como los generadores de políticas de privacidad y este ejemplo de aviso de derechos de autor, o usa ChatGPT para generar los documentos.
Preparación
La preparación de una dApp para su lanzamiento comienza con una compilación configurada para producción.
Primero, limpia el repositorio. Elimina los registros de la consola y usa herramientas de seguimiento de errores para supervisar la dApp. También debes revisar y actualizar las variables de entorno para el entorno de producción.
¡No incluyas claves secretas en el archivo .env!
Después, asegúrate de que todos los recursos tengan el tamaño correcto y elimina los archivos innecesarios. Las imágenes de vista previa de la tienda de dApps deben tener una resolución de 1080p (1920 px por 1080 px) y todas deben tener orientación horizontal o vertical. Los íconos de la tienda de dApps pueden tener un tamaño máximo de 512x512 px y el archivo debe ser cuadrado.
Para publicar en la tienda de dApps, necesitas un par de claves de Solana. Genera un nuevo par de claves con solana-keygen y agrega fondos en Solana para usarlos más adelante. Protege este par de claves. De lo contrario, cualquier persona que lo tenga podrá enviar versiones posteriores de la dApp a la tienda de dApps.
Cuando compilas aplicaciones para producción, una clave de aplicación debe firmar la compilación. Las aplicaciones nuevas requieren claves de firma nuevas; no uses la misma clave que utilizas para depuración. Al igual que con la clave de publicación, cualquier persona que tenga la clave de la aplicación podrá actualizarla. Abre una terminal y pega el siguiente comando para generar la clave de firma de la aplicación mediante keystore.
keytool -genkey -v -keystore release-key.keystore -alias alias_name -keyalg RSA -keysize 2048 -validity 10000Crea release-key.keystore e storePassword (que también funciona como keyPassword) en el directorio actual. Usa el siguiente ejemplo de código para crear los valores signingConfigs e buildTypes de producción en 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
}
}En el mismo archivo, establece el locale(s) de la aplicación y actualiza versionCode e versionName. Esta es la última oportunidad para cambiar applicationId.
Con la firma de producción configurada, la dApp está lista para compilarse para producción. En el directorio de la dApp, ejecuta el siguiente comando para eliminar los recursos de depuración duplicados y generar la compilación de producción.
Si el proceso se completa correctamente, el comando generará un APK en la carpeta /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 ..Pasos de publicación
Para publicar en la tienda de dApps, debes usar las herramientas CLI de la tienda. Esta sección resume los pasos de configuración de Solana Mobile para publicar en la tienda de dApps:
- Instala las herramientas CLI de la tienda de dApps.
- Crea y valida
config.yaml. - Acuña los NFT de la aplicación, del publicador y de la versión.
- Envía y publica.
En el directorio de publicación, ejecuta los siguientes comandos:
pnpm init
pnpm install --save-dev @solana-mobile/dApp-store-cli
npx dApp-store initEl comando de inicialización creará un archivo config.yaml. Este archivo sirve para configurar cómo aparecerá la dApp en la tienda de dApps. Debes completar tres secciones: publisher, app e release.
Todas estas secciones tienen un campo de dirección que debes dejar vacío para la versión inicial. Los pasos de publicación crearán NFT para cada sección y actualizarán las direcciones automáticamente.
Esta es una referencia vacía de config.yaml. Puedes encontrar una versión preconfigurada en el repositorio de GitHub 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:Puedes modificar la sección de la versión para las nuevas actualizaciones de la aplicación. Completa los campos multimedia para mostrar imágenes de vista previa e íconos en la tienda de dApps. Debes proporcionar la ruta al APK para instalar el archivo. Coloca estos archivos en el repositorio de publicación y proporciona sus rutas relativas como URI. Puedes editar las descripciones de la aplicación en el catálogo. Los campos como google_store_package e saga_features son opcionales.
Una vez que completes config.yaml, verifica la validez de la publicación con el siguiente comando y las rutas al par de claves de Solana y a Android Build Tools.
Si instalaste Android Build Tools con Android Studio, puedes encontrar la ruta abriendo Android Studio, haciendo clic en el menú desplegable Tools y seleccionando SDK Manager.
Ve a la pestaña SDK Tools y haz clic en Android_SDK_Build_Tools 34 para mostrar la ruta a las herramientas de compilación. La ruta debe verse así: C:\Users\user\AppData\Local\Android\Sdk.
npx dApp-store validate -k path_to_keypair -b path_to_android_sdk_build_toolsPara publicar en la tienda de dApps, se crean NFT para cada sección de config.yaml
Comienza por crear el NFT del publicador. Esta operación se realiza una sola vez, por lo que no necesitas repetir este paso en versiones posteriores. Reemplaza mainnet_beta_rpc_url por una URL RPC de Helius.
npx dApp-store create publisher -k path_to_your_keypair -u mainnet_beta_rpc_urlLa creación del NFT de la aplicación también requiere ejecutar el comando una sola vez. Este comando creará el NFT de la aplicación y registrará la dirección de acuñación en config.yaml.
npx dApp-store create app -k path_to_keypair -u mainnet_beta_rpc_urlUsa el siguiente comando para crear el NFT de la versión. Debes crear un nuevo NFT de la versión cuando envíes una nueva versión a la tienda de dApps. La dirección de acuñación se actualiza automáticamente cada vez que ejecutas el comando.
npx dApp-store create release -k path_to_keypair -b path_to_android_sdk_build_tools -u mainnet_beta_rpc_urlCuando los tres NFT se hayan creado correctamente, la aplicación estará lista para enviarse a la tienda de dApps.
Publica con el siguiente comando e incluye las marcas --requestor-is-authorized --complies-with-solana-dApp-store-policies para confirmar el cumplimiento.
npx dApp-store publish submit -k path_to_keypair -u mainnet_beta_rpc_url --requestor-is-authorized --complies-with-solana-dApp-store-policiesUna vez que envíes la dApp a la tienda de dApps, el equipo de Solana Mobile se pondrá en contacto mediante la dirección de correo electrónico incluida en la sección del publicador. También puedes contactar al equipo de Solana Mobile en el canal #dapp store. Los plazos habituales de revisión son de dos a tres días para las aplicaciones nuevas y de un día para las actualizaciones.
Reflexiones posteriores al lanzamiento
Publicar en la tienda de dApps puede parecer intimidante si es tu primera vez, pero las herramientas adecuadas simplifican el proceso. Durante el lanzamiento de Chonky dApp, además de algunos problemas móviles —como ventanas modales de billeteras que no funcionaban en modos de bajo consumo o ahorro de batería y usuarios impacientes que cancelaban la solicitud de firma—, los usuarios de Saga pudieron reclamar el airdrop en el primer intento. El registro de errores demuestra su importancia una vez que la dApp está disponible, ya que permite supervisar errores en tiempo real y registrar el comportamiento de los usuarios. Usa herramientas de registro para obtener información importante sobre el uso. Por el momento, Solana Mobile no recopila datos como visualizaciones y descargas de aplicaciones, por lo que cada desarrollador debe implementar un registro adecuado en su aplicación.
Llevar una aplicación a dispositivos móviles significa poner al usuario en primer lugar. Desde el diseño de UX hasta los flujos de firma, los desarrolladores móviles optimizan la navegación por interfaces digitales para ofrecer una experiencia integrada y fluida. En un mundo donde la atención escasea, las aplicaciones buscan ocupar un lugar en la pantalla de inicio del usuario. Debido a las políticas restrictivas de las tiendas de aplicaciones populares, pocas aplicaciones consiguen llevar experiencias gratificantes con criptomonedas a los dispositivos móviles. La tecnología blockchain de Solana permite recompensar a los usuarios de forma masiva, y Solana Mobile tiene una posición privilegiada para liderar la manera en que las personas interactúan con aplicaciones nativas de criptomonedas. Con Saga Chapter 2 previsto para 2025, ahora es el momento perfecto para crear dApps para la tienda de dApps de Solana.
Si esta receta te inspira a crear una dApp única, suscríbete al blog de Helius y consulta los artículos educativos para desarrolladores de Solana. ¿Tienes un Saga y quieres comenzar a desarrollar con Solana Mobile Stack? El tutorial Control de acceso mediante tokens en Solana Mobile es ideal para que los desarrolladores de Android principiantes que conocen Typescript lo sigan paso a paso. Únete a Helius Hacker Society en Discord y mantente al tanto de más contenido sobre desarrollo móvil en Solana. Helius está aquí para ayudarte con cualquier pregunta en el foro de Helius.
Recursos adicionales
- Configuración del entorno de desarrollo móvil para Android
- Referencia de Mobile Wallet Adapter
- SDK de Solana para React Native
- Arquitectura de dApps móviles
- Prepara tu aplicación para el lanzamiento
- Android Studio
- Repositorio de GitHub para publicar dApps de Solana Mobile
- Documentación para publicar dApps de Solana Mobile
- Especificaciones para publicar en la tienda de dApps
- Discord de Solana Mobile
Artículos relacionados
Suscríbete a Helius
Mantente al día con las novedades del desarrollo en Solana y recibe actualizaciones cuando publiquemos


