Quale sapore del prodotto crea Android Studio per impostazione predefinita in build.gradle?


160

Abbiamo un progetto Android che utilizza il nuovo sistema di compilazione Gradle e utilizziamo Android Studio come strumento di sviluppo. Quando sono specificati diversi tipi di prodotti build.gradle, notiamo che Android Studio crea il primo specificato in ordine alfabetico. C'è un modo per dire ad Android Studio di creare e testare solo un sapore specifico del prodotto durante lo sviluppo?

Risposte:


334

Nella parte inferiore sinistra della finestra di Studio c'è una vista ancorata chiamata "Build Variants".

Aprilo e scegli la variante su cui vuoi lavorare. Ciò influirà sulla variante creata ma anche sulle cartelle di origine abilitate, che guideranno il completamento negli editor di codice e risorse.


15
Freddo. C'è un modo per personalizzare quale preferisce all'importazione iniziale?
Joe,

3
Io non la penso così. Posso chiedere all'ingegnere che l'ha fatto se possiamo aggiungere questo. Ma è probabile che questo sia diverso per progetto se si hanno sapori.
Xavier Ducrohet,

34
Le varianti sono una combinazione di sapori e tipi di costruzione. È possibile distribuire solo varianti. Non puoi mai costruire un apk che è solo un sapore.
Xavier Ducrohet,

5
Se sei interessato, puoi utilizzare la riga di comando per creare la variante specificata: ./gradlew assemble <Flavor1> <Flavor2> <...> <BuildType>, ad esempio assembleGooglePlayRelease. E puoi costruire e installare sul dispositivo o sull'emulatore collegato usando: ./gradlew install <Flavor1> <Flavor2> <...> <BuildType>
Deepscorn

5
Ma con quale sapore del prodotto, Android Studio crea l'applicazione per impostazione predefinita?
Malwinder Singh,

20

Attualmente non sembra esserci alcun modo per selezionare l'aroma predefinito. Esiste una richiesta di funzionalità in Android Issue Tracker per questo:

https://code.google.com/p/android/issues/detail?id=64917

È possibile aggiungere / contrassegnare la richiesta come stella, in modo che abbia una priorità maggiore sul backlog degli strumenti di sviluppo Android.


3
questa funzione sarà in Android Studio 3.5. NO JOKE - ci sono voluti 5 anni per implementarlo !! (guarda la data di creazione del biglietto)
Someone Somewhere

4

Sì, c'è un modo:

android {
    productFlavors {
        foo {
            isDefault true
        }
    }
}

In caso contrario, sono preferite le varianti con il tipo di build di debug.

È stato aggiunto in Android Studio 3.5, vedi richiesta di funzionalità :

"Incluso in Android Gradle Plugin 3.5.0-alpha08 e Android Studio 3.5 Canary 8 [3.5.0.7].

L'euristica per i progetti che utilizzano AGP precedente e i progetti senza impostazioni esplicite è stata anche aggiornata per favorire le varianti con il debug del tipo di build, come descritto nel messaggio di commit. "


-1

È possibile specificare il comando Esegui nella sezione Prima di avviare Make compatibile con Gradle

È possibile elencare tutte le attività di valutazione per gradlew tasks

inserisci qui la descrizione dell'immagine


Ho provato questo e mentre certamente si traduce in un solo sapore in costruzione, Android Studio lancerà comunque solo la variante selezionata. Peggio ancora, se seleziono un'attività specifica non nella variante selezionata, ricevo un messaggio di errore confuso che dice "l'attività deve essere esportata o contenere un filtro di intenti". L'errore scompare quando modifico la selezione bariant build.
Dagmar,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.