Informazioni sugli Android App Bundle
Mantieni tutto organizzato con le raccolte
Salva e classifica i contenuti in base alle tue preferenze.
Un Android App Bundle è un formato di pubblicazione che include tutte le risorse e il codice compilato dell'app e impedisce la generazione e l'accesso degli APK a Google Play.
Google Play utilizza l'app bundle per generare e pubblicare APK ottimizzati per ogni
configurazione del dispositivo, pertanto vengono scaricati solo il codice e le risorse necessarie per un
dispositivo specifico per eseguire la tua app. Non devi più creare,
firmare e gestire più APK per ottimizzare il supporto per diversi dispositivi e
gli utenti ricevono download più piccoli e più ottimizzati.
La maggior parte dei progetti di app non richiederà molto impegno per creare app bundle che supportano
la pubblicazione di APK ottimizzati. Se organizzi già il codice e le risorse della tua app in base alle convenzioni stabilite, crea Android App Bundle firmati utilizzando Android Studio o utilizzando la riga di comando e poi caricali su Google Play, la pubblicazione ottimizzata degli APK diventa un vantaggio automatico.
Quando utilizzi il formato dell'app bundle per pubblicare l'app, puoi anche
usufruire, in via facoltativa, di Play Feature Delivery,
che ti consente di aggiungere moduli delle funzionalità al progetto dell'app.
Questi moduli contengono funzionalità e risorse che sono incluse nella tua
app solo in base alle condizioni specificate da te o sono disponibili in un secondo momento in fase di runtime per il download
Utilizzo della libreria di base di Play.
Gli sviluppatori di giochi che pubblicano le proprie app con gli app bundle possono utilizzare
Play Asset Delivery, la soluzione di Google Play
per fornire grandi quantità di asset di gioco che offre metodi di pubblicazione flessibili
e prestazioni elevate.
Guarda il seguente video per una panoramica del motivo per cui dovresti pubblicare la tua app
utilizzando Android App Bundle.
Limitazione delle dimensioni di download compresse
La pubblicazione con Android App Bundle aiuta gli utenti a installare l'app con il minor numero di download possibile e aumenta le dimensioni di download compresse.
In altre parole, quando un utente scarica la tua app, le dimensioni totali degli
APK compressi necessari per installare l'app (ad esempio gli APK di base e gli APK di configurazione) non devono superare i 4 GB. Anche tutti i download successivi, come il download on demand di un modulo di funzionalità (e dei relativi APK di configurazione), devono rispettare questa limitazione compressa per le dimensioni di download. I pacchetti di asset non contribuiscono a questo limite di dimensioni, ma hanno altre limitazioni di dimensioni.
Se Play Console rileva che i possibili download della tua app o delle sue funzionalità on demand superano i limiti di dimensione massimi, verrà visualizzato un errore.
Tieni presente che gli Android App Bundle non supportano i file di espansione APK (*.obb
). Pertanto, se si verifica questo errore durante la pubblicazione dell'app bundle, usa una delle seguenti risorse per ridurre le dimensioni di download degli APK compressi:
- Assicurati di attivare tutti gli APK di configurazione impostando
enableSplit = true
per ogni tipo di APK di configurazione. In questo modo,
gli utenti scaricheranno solo il codice e le risorse necessarie per eseguire la tua app
sul loro dispositivo.
- Assicurati di restringere la tua app rimuovendo il codice e le risorse inutilizzati.
- Segui le best practice per ridurre ulteriormente le dimensioni dell'app.
- Valuta la possibilità di convertire le funzionalità utilizzate solo da alcuni dei tuoi utenti in moduli di funzionalità che la tua app può scaricare in un secondo momento, on demand. Tieni presente che questa operazione potrebbe richiedere
il refactoring dell'app, quindi assicurati di provare prima gli altri suggerimenti
descritti.
Altre considerazioni
Di seguito sono riportati i problemi noti che si verificano durante la creazione o la pubblicazione della tua app con Android App Bundle. Se riscontri problemi non ancora descritti qui, segnala un bug.
- Le installazioni parziali di app installate tramite sideload, ossia app che non sono installate utilizzando il Google Play Store e in cui mancano uno o più APK divisi richiesti, non sono riuscite su tutti i dispositivi certificati da Google e su tutti i dispositivi con Android 10 (livello API 29) o versioni successive. Quando scarichi la tua app tramite il Google Play Store, Google garantisce che tutti i componenti necessari dell'app siano installati.
Se utilizzi strumenti che modificano in modo dinamico le tabelle delle risorse, gli APK generati dagli app bundle potrebbero comportarsi in modo imprevisto. Pertanto, quando crei un app bundle,
ti consigliamo di disabilitare questi strumenti.
È possibile configurare proprietà nella configurazione di compilazione di un modulo di funzionalità che sono in conflitto con quelle dei moduli di base (o di altro tipo). Ad esempio, puoi impostare buildTypes.release.debuggable =
true
nel modulo di base e impostarlo su false
in un modulo delle funzionalità.
Questi conflitti potrebbero causare problemi di build e runtime. Tieni presente che, per impostazione predefinita, i moduli di funzionalità ereditano alcune configurazioni di build dal modulo di base. Pertanto, assicurati di comprendere quali configurazioni mantenere e quali omettere nella configurazione della build dei moduli delle funzionalità.
Risorse aggiuntive
Per scoprire di più sugli Android App Bundle, consulta le risorse che seguono.
Post sui blog
Video
I campioni di contenuti e codice in questa pagina sono soggetti alle licenze descritte nella Licenza per i contenuti. Java e OpenJDK sono marchi o marchi registrati di Oracle e/o delle sue società consociate.
Ultimo aggiornamento 2025-07-27 UTC.
[[["Facile da capire","easyToUnderstand","thumb-up"],["Il problema è stato risolto","solvedMyProblem","thumb-up"],["Altra","otherUp","thumb-up"]],[["Mancano le informazioni di cui ho bisogno","missingTheInformationINeed","thumb-down"],["Troppo complicato/troppi passaggi","tooComplicatedTooManySteps","thumb-down"],["Obsoleti","outOfDate","thumb-down"],["Problema di traduzione","translationIssue","thumb-down"],["Problema relativo a esempi/codice","samplesCodeIssue","thumb-down"],["Altra","otherDown","thumb-down"]],["Ultimo aggiornamento 2025-07-27 UTC."],[],[],null,["# About Android App Bundles\n\n| **Important:** From August 2021, new apps are required to publish with the [Android App Bundle](/guide/app-bundle) on Google Play. New apps larger than 200 MB are now supported by either [Play Feature Delivery](/guide/app-bundle/dynamic-delivery) or [Play Asset Delivery](/guide/app-bundle/asset-delivery). From June 2023, new and existing [TV apps are required to\n| be published as App Bundles](/docs/quality-guidelines/tv-app-quality#SC-E1).\n\nAn *Android App Bundle* is a publishing format that includes all your app's\ncompiled code and resources, and defers APK generation and signing to Google\nPlay.\n\nGoogle Play uses your app bundle to generate and serve optimized APKs for each\ndevice configuration, so only the code and resources that are needed for a\nspecific device are downloaded to run your app. You no longer have to build,\nsign, and manage multiple APKs to optimize support for different devices, and\nusers get smaller, more-optimized downloads.\n\nMost app projects won't require much effort to build app bundles that support\nserving optimized APKs. If you already [organize your app's code and\nresources](/guide/topics/resources/providing-resources#AlternativeResources)\naccording to established conventions, [build signed Android App\nBundles](/studio/publish/app-signing#sign-apk) using Android Studio or by [using\nthe command line](/studio/build/building-cmdline), and [upload them to Google\nPlay](/studio/publish/upload-bundle), then optimized APK serving becomes an\nautomatic benefit.\n\nWhen you use the app bundle format to publish your app, you can also optionally\ntake advantage of [Play Feature Delivery](/guide/playcore/feature-delivery),\nwhich lets you add *feature modules* to your app project.\nThese modules contain features and resources that are only included with your\napp based on conditions that you specify, or are available later at runtime for\ndownload [Using the Play Core Library](/guide/playcore).\n\nGame developers who publish their apps with app bundles can use\n[Play Asset Delivery](/guide/playcore/asset-delivery): Google Play's solution\nfor delivering large amounts of game assets that offers developers flexible\ndelivery methods and high performance.\n\nWatch the following video for an overview of why you should publish your app\nusing Android App Bundles. \n\nCompressed download size restriction\n------------------------------------\n\nPublishing with Android App Bundles helps your users to install your app with\nthe smallest downloads possible and increases the **compressed download size** .\nThat is, when a user downloads your app, the total size of\nthe compressed APKs required to install your app (for example, the base APK +\nconfiguration APKs) must be no more than 4 GB. Any subsequent downloads,\nsuch as downloading a feature module (and its configuration APKs) on demand,\nmust also meet this compressed download size restriction. Asset packs don't\ncontribute to this size limit, but they do have other [size restrictions](/guide/app-bundle/asset-delivery#size-limits).\n\nIf the Play Console finds any of the possible downloads of your app or its on\ndemand features to be more than the [maximum size limits](https://support.google.com/googleplay/android-developer/answer/9859372#size_limits), you will get an error.\n\nKeep in mind, **Android App Bundles do not support APK expansion (`*.obb`)\nfiles**. So, if you encounter this error when publishing your app bundle, use\none of the following resources to reduce compressed APK download sizes:\n\n- Make sure you [enable all configuration APKs](/studio/projects/dynamic-delivery#disable_config_apks) by setting `enableSplit = true` for each type of configuration APK. This makes sure that users download only the code and resources they need to run your app on their device.\n- Make sure you [shrink your app](/studio/build/shrink-code) by removing unused code and resources.\n- Follow best practices to further [reduce app size](/topic/performance/reduce-apk-size).\n- Consider converting features that are used by only some of your users into [feature modules](/studio/projects/dynamic-delivery#dynamic_feature_modules) that your app can download later, on demand. Keep in mind, this may require some refactoring of your app, so make sure to first try the other suggestions described.\n\nOther considerations\n--------------------\n\nThe following are known issues when building or serving your app\nwith Android App Bundles. If you experience issues that are\nnot already described here, [report a bug](https://issuetracker.google.com/issues/new?component=398856&template=1084213).\n\n- Partial installs of sideloaded apps---that is, apps that are not installed using the Google Play Store and are missing one or more required split APKs---fail on all Google-certified devices and devices running Android 10 (API level 29) or higher. When downloading your app through the Google Play Store, Google ensures that all required components of the app are installed.\n- If you use tools that dynamically modify resource tables, APKs generated\n from app bundles might behave unexpectedly. So, when building an app bundle,\n it is recommended that you disable such tools.\n\n- It is possible to configure properties in a feature\n module's build configuration that conflict with those from the base (or\n other) modules. For example, you can set `buildTypes.release.debuggable =\n true` in the base module and set it to `false` in a feature module.\n Such conflicts might cause build and runtime issues. Keep in mind, by default,\n feature modules inherit some build configurations from the base\n module. So, make sure you understand which configurations you should keep,\n and which ones you should omit, in your [feature module build\n configuration](/guide/app-bundle/configure#feature_build_config).\n\nAdditional resources\n--------------------\n\nTo learn more about Android App Bundles, consult the following resources.\n\n### Blog posts\n\n- [Building your first App Bundle](https://medium.com/androiddevelopers/building-your-first-app-bundle-bbcd228bf631)\n- [What a new publishing format means for the future of Android](https://medium.com/googleplaydev/what-a-new-publishing-format-means-for-the-future-of-android-2e34981793a)\n- [New features to help you develop, release, and grow your business on Google Play](https://android-developers.googleblog.com/2019/05/whats-new-in-play.html)\n- [The latest Android App Bundle updates including the additional languages API](https://android-developers.googleblog.com/2019/03/the-latest-android-app-bundle-updates.html)\n- [Patchwork Plaid --- A modularization story](https://medium.com/androiddevelopers/a-patchwork-plaid-monolith-to-modularized-app-60235d9f212e)\n- [Google Santa Tracker --- Moving to an Android App Bundle](https://medium.com/androiddevelopers/google-santa-tracker-moving-to-an-android-app-bundle-dde180716096)\n- [Developer tools on Play Console](https://medium.com/androiddevelopers/developer-tools-on-play-store-85fb710ee33b)\n\n### Videos\n\n- [Everything to know about Play App Signing](https://www.youtube.com/watch?v=odv_1fxt9BI)\n- [Building your first App Bundle](https://www.youtube.com/watch?v=IPLhLu0kvYw)\n- [App Bundles: Testing with Bundletool and the Play Console](https://www.youtube.com/watch?v=vAEAZPU7w-I)\n- [Customizable Delivery with the App Bundle and Easy Sharing of Test Builds](https://www.youtube.com/watch?v=flhib2krW7U)\n- [New Tools to Optimize Your App's Size and Boost Installs on Google Play](https://www.youtube.com/watch?v=rEuwVWpYBOY)"]]