Configura la distribuzione al momento dell'installazione

I moduli delle funzionalità ti consentono di separare determinate funzionalità e risorse dal modulo di base dell'app e includile nell'app bundle. Puoi e poi personalizza le opzioni di consegna per controllare quando e come i dispositivi con Android 5.0 (livello API 21) o versioni successive scaricare le funzioni della tua app.

Tieni presente che questo tipo di modularizzazione richiede più impegno e possibilmente eseguire il refactoring del codice esistente della tua app, quindi valuta attentamente a quale dei tuoi le funzionalità dell'app trarrebbero il massimo vantaggio dalla disponibilità per gli utenti on demand.

Se vuoi modularizzare gradualmente le funzionalità dell'app nel tempo, senza modificare il comportamento dell'app o personalizzare le opzioni di pubblicazione avanzate, può farlo creando moduli di funzionalità che sono configurati per il momento dell'installazione la distribuzione dei contenuti. In altre parole, puoi modularizzare una caratteristica come modulo delle funzionalità, ma non attivare le opzioni avanzate in modo che la funzionalità sia disponibile quando un utente installa il tuo dell'app.

Inoltre, i moduli delle funzionalità configurati per la distribuzione al momento dell'installazione possono essere disinstallati in un secondo momento se non sono più necessari. Per questo motivo, devono essere configurati come rimovibili.

Questa sezione descrive come creare un modulo di funzionalità per il momento dell'installazione la distribuzione dei contenuti. Prima di iniziare, assicurati di avere Con Android Studio 3.5 o versioni successive e il plug-in Android Gradle 3.5.0 o superiore.

Configura un nuovo modulo per la distribuzione al momento dell'installazione

Il modo più semplice per creare un nuovo modulo di funzionalità è usare Android Studio 3.5 o versioni successive. Poiché i moduli delle caratteristiche hanno un dipendenza intrinseca dal modulo dell'app di base, puoi aggiungerle solo alle applicazioni di Google Cloud.

Per aggiungere un modulo di funzionalità al progetto della tua app utilizzando Android Studio: procedi nel seguente modo:

  1. Se non l'hai ancora fatto, apri il progetto dell'app nell'IDE.
  2. Seleziona File > Nuovo > Nuovo modulo dalla barra dei menu.
  3. Nella finestra di dialogo Crea nuovo modulo, seleziona Modulo di funzionalità dinamiche e fai clic su Avanti.
  4. Nella sezione Configura il nuovo modulo, completa il seguenti:
      .
    1. Seleziona il modulo di applicazione di base per il progetto della tua app da dal menu a discesa.
    2. Specifica un Nome modulo. L'IDE utilizza questo nome per identificare come sottoprogetto Gradle nel tuo File delle impostazioni di Gradle. Quando creare l'app bundle, Gradle usa l'ultimo elemento del sottoprogetto per inserire l'attributo <manifest split> in manifest del modulo delle funzionalità.
    3. Specifica il nome del pacchetto del modulo. Per impostazione predefinita, Android Studio suggerisce un nome pacchetto che combina il nome del pacchetto modulo di base e il nome del modulo che hai specificato nel passaggio precedente.
    4. Seleziona il livello API minimo che il modulo deve supportare. Questo valore deve corrispondere a quello del modulo di base.
  5. Fai clic su Avanti.
  6. Nella sezione Opzioni di download del modulo, completa quanto segue:

    1. Specifica il titolo del modulo utilizzando fino a 50 caratteri. Base della tua app deve includere il titolo del modulo come stringa di risorsa, che hai possono tradurre. Quando crei il modulo usando Android Studio, l'IDE aggiunge la risorsa di stringa al modulo di base per te e inserisce la seguente nel manifest del modulo delle funzionalità:

      <dist:module
          ...
          dist:title="@string/feature_title">
      </dist:module>
      
    2. Nel menu a discesa in Inclusione al momento dell'installazione, seleziona Includi al momento dell'installazione. Android Studio inserisce quanto segue nella manifest del modulo in modo che rifletta la tua scelta:

      <dist:module ... >
        <dist:delivery>
            <dist:install-time />
        </dist:delivery>
      </dist:module>
      

      Se vuoi scoprire come creare un modulo di funzionalità che è possibile scaricare dopo l'installazione dell'app, leggere configurare la distribuzione on demand.

    3. Seleziona la casella accanto a Fondazione se vuoi che questo modulo sia disponibile ai dispositivi con Android 4.4 (livello API 20) e versioni precedenti e inclusi APK multipli. Ciò significa che puoi ometterlo dai dispositivi che non supportano scaricare e installare APK divisi. Android Studio inserisce il nel file manifest del modulo per riflettere la tua scelta:

      <dist:module ...>
          <dist:fusing dist:include="true | false" />
      </dist:module>
      
  7. Fai clic su Fine.

Dopo che Android Studio ha finito di creare il modulo, esaminane i contenuti dal riquadro Progetto (seleziona Visualizza > Finestre strumenti > Progetto dalla barra dei menu). Il codice, le risorse e l'organizzazione predefiniti devono essere in modo simile a quelli del modulo dell'app standard.

Rendi rimovibile un modulo al momento dell'installazione

Potrebbe essere utile creare moduli di funzionalità per la distribuzione al momento dell'installazione che possono essere disinstallati in un secondo momento se non sono più necessari. Ad esempio, per ridurre le dimensioni installate la tua app, puoi modularizzare i contenuti richiesti per l'addestramento o l'onboarding, e poi disinstallare il modulo delle funzionalità usando l'API Play Core dopo che l'utente ha configurato l'utilizzo della tua app.

I moduli di fase di installazione non sono rimovibili per impostazione predefinita. Per contrassegnare un modulo come rimovibile e consentirne la disinstallazione, aggiungi il tag removable e imposta il relativo valore su true:

<dist:module ... >
  <dist:delivery>
      <dist:install-time>
          <dist:removable dist:value="true"/>
      </dist:install-time>
  </dist:delivery>
</dist:module>