Il modo migliore per risolvere IMPREVISTO ECCEZIONE TOP-LEVEL? Ti suggerisco questo passaggio Due per risolvere questo problema.
- Controllare le librerie collegate Dipendenza/gerarchia
- controllare quale classe biblioteca o file sono la causa della duplicazione file o metodi contano supera 65k
- Come Controllare le librerie allegate Dipendenza/gerarchia?
primo trovato la dipendenza che viene utilizzato nella biblioteca che è attaccato/compilato dall'emissione/jcenter/mavencentral.Major maven verrà con supporto perché può possibile che il supporto-v4 & appcompact contiene già biblioteca che è collegato da Maven (un gioco di servizio contiene v4, appcompact attaccato quindi non c'è bisogno di collegare il supporto-v4 in quanto contiene già.)
come controllare Dipendenza/gerarchia della libreria collegata in Gradle
del menu Gradle>: MODULENAME >> Compiti >> >> Android "androidDependcies" Run
O
di menu Gradle>: app >> Compiti >> >> Android Run "androidDependcies"
in questo modo in Gradle Console otterrete qualcosa di simile al di sotto come uscita (output può dipende da librerie collegate) quale lo può dare un'idea circa la duplicazione/gerarchia delle librerie
release
+--- LOCAL: picasso-2.5.2.jar
+--- LOCAL: YouTubeAndroidPlayerApi.jar
+--- LOCAL: commons-lang-2.6.jar
+--- LOCAL: signpost-core-1.2.1.1.jar
+--- LOCAL: kxml2_2.3.0.jar
+--- LOCAL: classes.jar
+--- LOCAL: signpost-commonshttp4-1.2.1.1.jar
+--- LOCAL: json-simple-1.1.1.jar
+--- LOCAL: universal-image-loader-1.9.3.jar
+--- LOCAL: linkedin-j-.jar
+--- LOCAL: maps.jar
+--- LOCAL: nineoldandroids-2.4.0.jar
+--- com.android.support:multidex:1.0.1
+--- com.android.support:multidex:1.0.1
+--- com.android.support:appcompat-v7:23.1.1
| \--- com.android.support:support-v4:23.1.1
| \--- LOCAL: internal_impl-23.1.1.jar
+--- com.google.android.gms:play-services-maps:7.3.0
| \--- com.google.android.gms:play-services-base:7.3.0
| \--- com.android.support:support-v4:23.1.1
| \--- LOCAL: internal_impl-23.1.1.jar
+--- com.google.android.gms:play-services-gcm:7.3.0
| \--- com.google.android.gms:play-services-base:7.3.0
| \--- com.android.support:support-v4:23.1.1
| \--- LOCAL: internal_impl-23.1.1.jar
+--- com.google.android.gms:play-services-location:7.3.0
| +--- com.google.android.gms:play-services-base:7.3.0
| | \--- com.android.support:support-v4:23.1.1
| | \--- LOCAL: internal_impl-23.1.1.jar
| \--- com.google.android.gms:play-services-maps:7.3.0
| \--- com.google.android.gms:play-services-base:7.3.0
| \--- com.android.support:support-v4:23.1.1
| \--- LOCAL: internal_impl-23.1.1.jar
+--- com.google.android.gms:play-services-ads:7.3.0
| +--- com.google.android.gms:play-services-base:7.3.0
| | \--- com.android.support:support-v4:23.1.1
| | \--- LOCAL: internal_impl-23.1.1.jar
| \--- com.google.android.gms:play-services-analytics:7.3.0
| \--- com.google.android.gms:play-services-base:7.3.0
| \--- com.android.support:support-v4:23.1.1
| \--- LOCAL: internal_impl-23.1.1.jar
+--- com.google.android.gms:play-services-analytics:7.3.0
| \--- com.google.android.gms:play-services-base:7.3.0
| \--- com.android.support:support-v4:23.1.1
| \--- LOCAL: internal_impl-23.1.1.jar
+--- com.google.android.gms:play-services-plus:7.3.0
| \--- com.google.android.gms:play-services-base:7.3.0
| \--- com.android.support:support-v4:23.1.1
| \--- LOCAL: internal_impl-23.1.1.jar
\--- com.android.support:recyclerview-v7:23.1.1
\--- com.android.support:support-v4:23.1.1
\--- LOCAL: internal_impl-23.1.1.jar
È anche possibile controllare questo dal terminale per il processo di cui sopra.
gradlew app:dependencies
È possibile controllare sotto immagine come "un'immagine vale più di mille parole"
Come controllare quale classe o file che causano voce duplicata/o conta il metodo superare 65k?
Piuttosto che il controllo sul messaggio di errore o che si stanno ottenendo Messaggio scheda di Android Studio check-in Gradle Console
Se nel messaggio di errore è come durante il trasferimento classi a dex :app:transformClassesWithDexForDebug
o :app:transformClassesWithDexForRelease
massima le probabilità sono come a causa di più dex (metodo limite di 65k in eccesso).
O se qualsiasi altro errore di quello che specificherà come voce duplicata legati ecc
non c'è un modo migliore perché la ragione può essere diversa. Esiste una soluzione per ogni caso con ECCEZIONE ECCEZIONALE DI ALTO LIVELLO. Pubblica il tuo problema e qualche utente ti aiuterà a risolvere –
Ciao Mr @GabrieleMariotti, ho un aggiornamento per il mio caso, mi fa molto tempo, quindi voglio chiedere del caso generale. – phongvan
Pubblica lo stacktrace del problema gradle. Usa gradlew assemble --info per ottenere maggiori dettagli. –