App Store
L’Apple App Store est le marché d’applications maintenu par Apple. Vous pouvez distribuer votre application Tauri ciblant macOS et iOS via cet App Store.
Cette guide ne couvre que les détails pour distribuer des applications directement sur l’App Store. Consultez le guide général de Distribution App Bundle pour plus d’informations sur les options et configurations de distribution macOS.
Distribuer des applications iOS et macOS nécessite de s’inscrire au programme Apple Developer.
De plus, vous devez configurer la signature de code pour macOS et iOS.
Après avoir exécuté tauri ios init pour configurer le projet Xcode, vous pouvez utiliser la commande tauri icon pour mettre à jour les icônes de l’application.
npm run tauri icon /path/to/app-icon.png -- --ios-color #fffyarn tauri icon /path/to/app-icon.png --ios-color #fffpnpm tauri icon /path/to/app-icon.png --ios-color #fffdeno task tauri icon /path/to/app-icon.png --ios-color #fffbun tauri icon /path/to/app-icon.png --ios-color #fffcargo tauri icon /path/to/app-icon.png --ios-color #fffL’argument --ios-color définit la couleur d’arrière-plan pour les icônes iOS.
Après vous être inscrit au programme Apple Developer, la première étape pour distribuer votre application Tauri sur l’App Store est d’enregistrer votre application dans App Store Connect.
La CLI Tauri peut empaqueter votre application pour macOS et iOS. L’exécution sur une machine macOS est requise.
Tauri dérive le CFBundleVersion de la valeur définie dans [tauri.conf.json > version].
Vous pouvez définir une version de bundle personnalisée dans la configuration [tauri.conf.json > bundle > iOS > bundleVersion] ou [tauri.conf.json > bundle > macOS > bundleVersion] si vous avez besoin d’un schéma de version de bundle différent, par exemple des codes séquentiels :
{ "bundle": { "iOS": { "bundleVersion": "100" } }}Notez que Tauri exploite Xcode pour l’application iOS, vous pouvez donc utiliser Xcode pour archiver et distribuer pour iOS au lieu de la CLI Tauri. Pour ouvrir le projet iOS dans Xcode pour la construction, vous devez exécuter la commande suivante :
npm run tauri ios build -- --openyarn tauri ios build --openpnpm tauri ios build --opendeno task tauri ios build --openbun tauri ios build --opencargo tauri ios build --openPour télécharger votre application sur l’App Store, vous devez d’abord vous assurer que toutes les options de configuration requises sont définies afin de pouvoir empaqueter l’App Bundle, créer un fichier .pkg signé et le télécharger.
Les sections suivantes vous guideront à travers le processus.
Votre application doit inclure certaines configurations pour être acceptée par le système de vérification de l’App Store.
- Catégorie
Votre application doit définir sa tauri.conf.json > bundle > category pour être affichée dans l’App Store :
{ "bundle": { "category": "Utility" }}- Profil de provisionnement
Vous devez également créer un profil de provisionnement pour que votre application soit acceptée par Apple.
Dans la page Identifiers, créez un nouvel App ID et assurez-vous que sa valeur “Bundle ID” correspond à l’identifiant défini dans tauri.conf.json > identifier.
Accédez à la page Profiles pour créer un nouveau profil de provisionnement. Pour la distribution macOS App Store, il doit s’agir d’un profil “Mac App Store Connect”. Sélectionnez l’App ID approprié et liez le certificat que vous utilisez pour la signature de code.
Après avoir créé le profil de provisionnement, téléchargez-le et enregistrez-le dans un emplacement connu et configurez Tauri pour l’inclure dans votre bundle d’application :
{ "bundle": { "macOS": { "files": { "embedded.provisionprofile": "path/to/profile-name.provisionprofile" } } }}- Info.plist
Votre application doit se conformer aux réglementations d’exportation de chiffrement. Consultez la documentation officielle pour plus d’informations.
Créez un fichier Info.plist dans le dossier src-tauri :
<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"><plist version="1.0"><dict> <key>ITSAppUsesNonExemptEncryption</key> <false/> # ou `true` si votre application utilise le chiffrement</dict></plist>- Entitlements (Droits)
Votre application doit inclure la capacité App Sandbox pour être distribuée sur l’App Store. De plus, vous devez également définir votre App ID et Team ID dans les droits de signature de code.
Créez un fichier Entitlements.plist dans le dossier src-tauri :
<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"><plist version="1.0"><dict> <key>com.apple.security.app-sandbox</key> <true/> <key>com.apple.application-identifier</key> <string>$TEAM_ID.$IDENTIFIER</string> <key>com.apple.developer.team-identifier</key> <string>$TEAM_ID</string></dict></plist>Notez que vous devez remplacer $IDENTIFIER par la valeur tauri.conf.json > identifier et $TEAM_ID par votre ID d’équipe Apple Developer, qui se trouve dans la section App ID Prefix dans l’Identifiant que vous avez créé pour le profil de provisionnement.
Et référencez ce fichier dans la configuration du bundle macOS tauri.conf.json > bundle > macOS > entitlements :
{ "bundle": { "macOS": { "entitlements": "./Entitlements.plist" } }}Vous devez maintenant construire votre application avec la signature de code activée pour que les droits s’appliquent.
Assurez-vous que votre application fonctionne lorsqu’elle est exécutée dans un contexte App Sandbox.
Vous devez télécharger votre application macOS en tant que fichier .pkg sur l’App Store.
Exécutez la commande suivante pour empaqueter votre application en tant que macOS App Bundle (extension .app) :
tauri build --bundles app --target universal-apple-darwinConsultez le guide de distribution App Bundle pour plus d’informations sur les options de configuration.
Pour générer un .pkg signé à partir de votre bundle d’application, exécutez la commande suivante :
xcrun productbuild --sign "<certificate signing identity>" --component "target/universal-apple-darwin/release/bundle/macos/$APPNAME.app" /Applications "$APPNAME.pkg"Notez que vous devez remplacer $APPNAME par le nom de votre application.
Maintenant, vous pouvez utiliser la CLI altool pour télécharger votre PKG d’application sur l’App Store :
xcrun altool --upload-app --type macos --file "$APPNAME.pkg" --apiKey $APPLE_API_KEY_ID --apiIssuer $APPLE_API_ISSUERNotez que altool nécessite une clé API App Store Connect pour télécharger votre application.
Consultez la section authentification pour plus d’informations.
Votre application sera ensuite validée par Apple et disponible dans TestFlight si elle est approuvée.
Pour construire votre application iOS, exécutez la commande tauri ios build :
npm run tauri ios build -- --export-method app-store-connectyarn tauri ios build --export-method app-store-connectpnpm tauri ios build --export-method app-store-connectdeno task tauri ios build --export-method app-store-connectbun tauri ios build --export-method app-store-connectcargo tauri ios build --export-method app-store-connectLe fichier IPA généré peut être trouvé dans src-tauri/gen/apple/build/arm64/$APPNAME.ipa.
Notez que vous devez remplacer $APPNAME par le nom de votre application.
Maintenant, vous pouvez utiliser la CLI altool pour télécharger votre application iOS sur l’App Store :
xcrun altool --upload-app --type ios --file "src-tauri/gen/apple/build/arm64/$APPNAME.ipa" --apiKey $APPLE_API_KEY_ID --apiIssuer $APPLE_API_ISSUERNotez que altool nécessite une clé API App Store Connect pour télécharger votre application.
Consultez la section authentification pour plus d’informations.
Votre application sera ensuite validée par Apple et disponible dans TestFlight si elle est approuvée.
Les applications iOS et macOS sont téléchargées à l’aide de altool, qui utilise une clé API App Store Connect pour s’authentifier.
Pour créer une nouvelle clé API, ouvrez la page Users and Access d’App Store Connect, sélectionnez l’onglet Integrations > Individual Keys, cliquez sur le bouton Add et sélectionnez un nom et l’accès Developer.
Le APPLE_API_ISSUER (Issuer ID) est présenté au-dessus du tableau des clés, et le APPLE_API_KEY_ID est la valeur dans la colonne Key ID de ce tableau.
Vous devez également télécharger la clé privée, ce qui ne peut être fait qu’une seule fois et n’est visible qu’après un rechargement de la page (le bouton est affiché sur la ligne du tableau pour la clé nouvellement créée).
Le chemin du fichier de clé privée doit être enregistré sous AuthKey_<APPLE_API_KEY_ID>.p8 dans l’un de ces répertoires : <current-working-directory>/private_keys, ~/private_keys, ~/.private_keys ou ~/.appstoreconnect/private_keys.
© 2025 Tauri Contributors. CC-BY / MIT