
Publication d’applications Solana Mobile : guide pratique
Les boutiques d’applications n’ont jamais été favorables aux éditeurs d’applications crypto. Les règles de l’Apple App Store interdisent l’utilisation de cryptomonnaies pour les achats intégrés et imposent une commission de 30 % sur les paiements effectués via Apple. Les développeurs sont également limités par l’interdiction des récompenses intégrées distribuées par l’intermédiaire d’une blockchain. Ces contraintes dissuadent de nombreux développeurs indépendants de lancer des dApps mobiles. Solana Saga bouleverse le secteur des dApps mobiles en introduisant le dApp store, une boutique d’applications décentralisée sans frais qui autorise les microtransactions sans politiques restrictives. Solana Mobile permet aux développeurs de créer des dApps et de les publier sur le dApp store sans les obstacles ni les coûts associés aux boutiques d’applications traditionnelles.
Pendant ce temps, les utilisateurs continuent de recevoir des récompenses et de profiter des avantages uniques de Saga. Une toute nouvelle dApp a été publiée sur le dApp store : la dApp Chonky. Propulsée par Helius, elle a été téléchargée depuis le dApp store par plus de 7 500 appareils uniques au cours des douze premières heures. Disponible uniquement sur le dApp store, la dApp Chonky permet aux utilisateurs de réclamer une part de Chonky lorsqu’ils se connectent avec un portefeuille Saga Genesis.
Ce guide, qui a permis à Chonky de publier sur le dApp store en moins d’une semaine, a été mis à l’épreuve et validé. Découvrez le processus de publication d’une dApp Solana Mobile, de la préparation des éléments à l’envoi sur le dApp store. Ce guide vise à aider les développeurs à comprendre les exigences du processus de publication et à estimer un calendrier afin de définir des attentes réalistes.
Éléments requis
Suivez le guide et rassemblez les éléments nécessaires à la publication afin de générer un Android Package Kit (APK) prêt pour la mise en production. Voici la liste des éléments à réunir et à préparer pour les étapes de publication.
Liste de contrôle
- Build prêt pour la mise en production
- Outils de build Android
- Informations de version
- Outils de signalement des erreurs comme Sentry
- Ressources de la dApp et du dApp store
- URL RPC Helius
- Clé de signature de l’application
- Clé d’éditeur
- Conditions et accords
- Licence
- Politique de confidentialité
- Droits d’auteur
La publication sur les boutiques d’applications est soumise à des conditions générales pour l’éditeur et le consommateur. Elles sont importantes pour protéger les utilisateurs et limiter la responsabilité des éditeurs. Avant de publier, les éditeurs du dApp store Solana acceptent la politique destinée aux éditeurs, l’accord de publication des dApps et les conditions d’utilisation du dApp store.
L’éditeur doit fournir un contrat de licence utilisateur final (CLUF), une politique de confidentialité et une mention de droits d’auteur au cours du processus de publication. En tant que développeur, procurez-vous ces documents et rendez-les accessibles en ligne : leurs liens seront demandés pendant le processus de publication. Consultez des ressources telles que les générateurs de politiques de confidentialité ou cet exemple de mention de droits d’auteur, ou utilisez ChatGPT pour générer ces documents.
Préparation
La préparation d’une dApp pour son lancement commence par un build configuré pour la mise en production.
Commencez par nettoyer le dépôt. Supprimez les journaux de la console et utilisez des outils de signalement des erreurs pour surveiller la dApp. Vérifiez et mettez également à jour les variables d’environnement pour l’environnement de production.
Ne placez pas de clés secrètes dans le fichier .env !
Vérifiez ensuite que toutes les ressources ont les bonnes dimensions et supprimez les fichiers inutiles. Les images d’aperçu destinées au dApp store doivent avoir une résolution de 1080p (1 920 px sur 1 080 px) et être toutes horizontales ou toutes verticales. Les icônes du dApp store doivent mesurer au maximum 512 x 512 px et leur fichier doit être carré.
Une paire de clés Solana est requise pour publier sur le dApp store. Générez-en une nouvelle avec solana-keygen et approvisionnez-la en SOL pour plus tard. Conservez cette paire de clés en lieu sûr. Dans le cas contraire, toute personne qui la possède pourra soumettre les versions ultérieures de la dApp au dApp store.
Lorsqu’une application est compilée pour sa mise en production, une clé d’application doit signer le build. Les nouvelles applications nécessitent de nouvelles clés de signature ; n’utilisez pas la même clé que pour le débogage. Comme pour la clé de publication, toute personne possédant la clé d’application peut mettre à jour l’application. Ouvrez un terminal et collez la commande suivante pour générer la clé de signature de l’application à l’aide de keystore.
keytool -genkey -v -keystore release-key.keystore -alias alias_name -keyalg RSA -keysize 2048 -validity 10000Créez release-key.keystore et storePassword (qui sert également de keyPassword) dans le répertoire actuel. Utilisez l’exemple de code suivant pour créer les signingConfigs et buildTypes de mise en production dans 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
}
}Dans le même fichier, définissez le locale(s) de l’application et mettez à jour versionCode et versionName. C’est votre dernière occasion de modifier applicationId.
Une fois la signature de mise en production configurée, la dApp est prête à être compilée pour la production. Dans le répertoire de la dApp, exécutez la commande suivante pour supprimer les ressources dupliquées issues du débogage et assembler la version de production.
Si elle réussit, la commande génère un APK dans le dossier /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 ..Étapes de publication
La publication sur le dApp store nécessite l’utilisation des outils CLI de la boutique. Cette section résume les étapes de configuration de Solana Mobile permettant de publier sur le dApp store :
- Installez les outils CLI du dApp store.
- Créez et validez
config.yaml. - Frappez les NFT de l’application, de l’éditeur et de la version.
- Soumettez et publiez.
Dans le répertoire de publication, exécutez les commandes suivantes :
pnpm init
pnpm install --save-dev @solana-mobile/dApp-store-cli
npx dApp-store initLa commande d’initialisation crée un fichier config.yaml. Celui-ci permet de configurer l’apparence de la dApp dans le dApp store. Trois sections doivent être renseignées : publisher, app et release.
Ces sections possèdent toutes un champ d’adresse qui doit rester vide pour la première version. Les étapes de publication créent des NFT pour chaque section et mettent automatiquement les adresses à jour.
Voici un modèle vierge de config.yaml. Une version préremplie est disponible dans le dépôt 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:La section relative à la version peut être modifiée lors des nouvelles mises à jour de l’application. Renseignez les champs de médias pour afficher des images d’aperçu et des icônes dans le dApp store. Le chemin de l’APK doit être indiqué pour permettre l’installation du fichier. Placez ces fichiers dans le dépôt de publication et fournissez leurs chemins relatifs en tant qu’URI. Les descriptions de l’application peuvent être modifiées dans le catalogue, et les champs tels que google_store_package et saga_features sont facultatifs.
Une fois config.yaml renseigné, vérifiez la validité de la publication à l’aide de la commande suivante, en indiquant le chemin vers la paire de clés Solana et les outils de build Android.
Si les outils de build Android sont installés avec Android Studio, vous pouvez trouver leur chemin en ouvrant Android Studio, en cliquant sur le menu déroulant Outils, puis en sélectionnant Gestionnaire de SDK.
Accédez à l’onglet Outils du SDK et cliquez sur Android_SDK_Build_Tools 34 pour afficher le chemin vers les outils de build. Le chemin doit ressembler à ceci : C:\Users\user\AppData\Local\Android\Sdk.
npx dApp-store validate -k path_to_keypair -b path_to_android_sdk_build_toolsPour publier sur le dApp store, des NFT sont créés pour chaque section de config.yaml
Commencez par créer le NFT de l’éditeur. Cette opération ne s’effectue qu’une seule fois : cette étape n’est donc pas nécessaire pour les versions ultérieures. Remplacez mainnet_beta_rpc_url par une URL RPC Helius.
npx dApp-store create publisher -k path_to_your_keypair -u mainnet_beta_rpc_urlLa création du NFT de l’application est également une commande à exécuter une seule fois. Cette commande crée le NFT de l’application et enregistre l’adresse de frappe dans config.yaml.
npx dApp-store create app -k path_to_keypair -u mainnet_beta_rpc_urlUtilisez la commande suivante pour créer le NFT de la version. Un nouveau NFT de version doit être créé chaque fois qu’une nouvelle version est soumise au dApp store. L’adresse de frappe est automatiquement mise à jour à chaque exécution de la commande.
npx dApp-store create release -k path_to_keypair -b path_to_android_sdk_build_tools -u mainnet_beta_rpc_urlUne fois les trois NFT créés avec succès, l’application est prête à être soumise au dApp store.
Publiez-la avec la commande ci-dessous et transmettez les indicateurs --requestor-is-authorized --complies-with-solana-dApp-store-policies pour confirmer sa conformité.
npx dApp-store publish submit -k path_to_keypair -u mainnet_beta_rpc_url --requestor-is-authorized --complies-with-solana-dApp-store-policiesUne fois la dApp soumise au dApp store, l’équipe Solana Mobile vous contactera à l’adresse e-mail indiquée dans la section relative à l’éditeur. Vous pouvez également contacter l’équipe Solana Mobile sur le canal #dapp store. Le délai d’examen habituel est de deux à trois jours pour les nouvelles applications et d’un jour pour les mises à jour.
Réflexions après le lancement
Publier sur le dApp store peut sembler intimidant pour un éditeur débutant, mais les bons outils simplifient le processus. Lors du lancement de la dApp Chonky, malgré quelques problèmes sur mobile, comme les fenêtres modales des portefeuilles qui ne fonctionnaient pas en mode économie d’énergie et les utilisateurs impatients qui annulaient la demande de signature, les utilisateurs de Saga ont pu réclamer l’airdrop dès leur première tentative. La journalisation des erreurs révèle toute son importance une fois la dApp lancée, car elle permet de surveiller les erreurs en temps réel et d’enregistrer le comportement des utilisateurs. Utilisez des outils de journalisation pour obtenir des informations importantes sur l’utilisation. Pour le moment, Solana Mobile ne collecte aucune donnée telle que le nombre de vues et de téléchargements d’applications. Il revient donc au développeur de mettre en place une journalisation adaptée dans son application.
Passer au mobile, c’est donner la priorité à l’utilisateur. De la conception UX aux processus de signature, les développeurs mobiles optimisent la navigation dans les interfaces numériques pour offrir une expérience intégrée et fluide. Dans un monde où l’attention est rare, les applications cherchent à gagner une place sur l’écran d’accueil de l’utilisateur. En raison des politiques de publication restrictives des boutiques d’applications populaires, peu d’applications parviennent à proposer sur mobile des expériences crypto assorties de récompenses. La technologie blockchain de Solana permet de récompenser les utilisateurs à grande échelle, et Solana Mobile est bien placée pour jouer un rôle de premier plan dans la manière dont chacun interagit avec les applications crypto-natives. Avec Saga Chapter 2 prévu pour 2025, c’est le moment idéal pour créer des dApps destinées au dApp store Solana.
Si cette recette vous donne envie de concocter une dApp unique, abonnez-vous au blog Helius et consultez les articles consacrés à la formation des développeurs Solana. Vous possédez un Saga et souhaitez commencer à développer avec la Solana Mobile Stack ? Le tutoriel Contrôle d’accès par token sur Solana Mobile est idéal pour accompagner les développeurs Android débutants qui connaissent Typescript. Rejoignez la Helius Hacker Society sur Discord et restez à l’affût de nouveaux contenus consacrés au développement mobile sur Solana. Helius est à votre disposition pour répondre à toutes vos questions sur le forum Helius.
Ressources supplémentaires
- Configuration du développement mobile Android
- Référence de Mobile Wallet Adapter
- SDK Solana pour React Native
- Architecture d’une dApp mobile
- Préparer votre application pour sa mise en production
- Android Studio
- Dépôt GitHub de publication des dApps Solana Mobile
- Documentation sur la publication des dApps Solana Mobile
- Spécifications de publication du dApp store
- Discord de Solana Mobile
Articles associés
Abonnez-vous à Helius
Suivez les dernières actualités du développement sur Solana et recevez une notification à chaque publication


