Prima di leggere la soluzione di seguito, leggi il mio aggiornamento dal 01.04.2020, il problema è più profondo ed è nel tuo codice.
Ho lo stesso problema dopo questo aggiornamento 3.6.
* La soluzione veloce è: *
- elimina projectFolder \ build
- elimina projectFolder \ debug *
- elimina projectFolder \ release *
- elimina projectFolder \ app \ build
- elimina projectFolder \ app \ build \ debug *
- elimina projectFolder \ app \ build \ release *
Quindi è necessario eliminare tutte le directory build, debug e release.
Nota che potresti non essere in grado di eliminare l'intero debug e rilasciare le directory, ma puoi eliminarne tutto il contenuto.
UPD:
Penso che abbiano risolto questo bug oggi:
UPD 03.03.2020:
Sfortunatamente, il bug non è stato corretto.
UPD 01.04.2020:
(Non scherzo del 1 aprile :))
Dal mese ho lavorato con gli sviluppatori di Android Studio e oggi mi è stato detto di usare jdk invece di usare jre, perché lo diceva uno dei profondi errori nei log.
Dopo aver impostato jdk ( File-> Struttura del progetto-> Posizione SDK-> Posizione JDK ) invece di jre, ho alcuni altri errori che non sono stati mostrati in "build output", quindi eseguo Analizza -> Ispeziona codice e ho ottenuto DICIotto errori come fare riferimento a ID di visualizzazione errato nei layout, errori di orientamento (ciao a tools:ignore="MissingDefaultResource"
) ed errori in manifest anche con orientamento: ho letto che questo è un nuovo aggiornamento in 3.6.1 - su orizzontale o verticale screenOrientation
, risolto velocemente da Studio con questo:
<activity
tools:ignore="LockedOrientationActivity" />
Quando tutti gli errori sono stati corretti con Analizza -> Ispeziona codice, ho generato con successo l'APK firmato usando jdk e quindi usando jre (solo per test).
Quindi, in sintesi, questo bug ha causato a causa di errori profondi che puoi scoprire solo con lo Inspect Code
strumento.
Penso che AS non penserà che questo sia un bug, penso che diranno che questa è una nuova funzionalità per migliorare il tuo codice. Inoltre penso che dovresti provare a ispezionare il tuo codice anche senza impostare jdk invece di jre.
Raccomandazione aggiuntiva dal supporto AS:
A proposito durante l'esportazione di una release
build, eseguiamo anche lintVital
un controllo extra e alcuni errori contrassegnati come fatal
. Questo controllo è costoso, quindi non si verifica nelle debug
build