Najlepsze sposoby rozwiązania nieoczekiwany wyjątek najwyższego poziomu? Zasugeruję ci ten krok Dwa, aby rozwiązać ten problem.
- Sprawdź załączone biblioteki Zależność/hierarchia
- Sprawdź jaka klasa biblioteki lub pliki są przyczyną powielania pliki lub metody liczenia przekroczyć 65k
- Jak Sprawdź dołączone biblioteki Zależność/hierarchia?
Najpierw znaleziono zależność, która jest wykorzystywana w bibliotece, która jest przymocowana/skompilowany z maven/jcenter/mavencentral.Major problemu przyjdzie z pomocą, ponieważ może to możliwe, że wsparcie-v4 & appcompact zawiera już w bibliotece, która jest przymocowany z Maven (jak gry serwis zawiera V4 appcompact załączony wtedy nie trzeba dołączać support-V4, ponieważ zawiera już).
jak sprawdzić Dependency/hierarchię z załączonej biblioteki w Gradle
menu Gradle>: modulename >> Zadania >> android >> Run "androidDependcies"
LUB
menu Gradle>: app >> Zadania >> android >> Run "androidDependcies"
Dzięki temu w Gradle konsoli dostaniesz coś jak poniżej jako wyjście (wyjście może zależy bibliotek dołączonych) Który może dać wyobrażenie o powielania/hierarchii bibliotek
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
Można to również sprawdzić na terminalu dla powyższego procesu.
gradlew app:dependencies
można sprawdzić pod obrazem jako „obraz jest wart tysiąca słów”
Jak sprawdzić, która klasa lub pliki, co powoduje duplikat wpisu/lub liczba metoda przekroczyć 65 tys.
Zamiast sprawdzania wiadomości lub błędów, które są coraz Wiadomość karcie android studio sprawdzić w Gradle konsoli
Jeśli w wyniku błędu wiadomości jest jak podczas przenoszenia klas do dex :app:transformClassesWithDexForDebug
lub :app:transformClassesWithDexForRelease
maksimum szanse są jak ze względu na wiele dex (metoda ponad 65k limit).
Albo czy jakikolwiek inny błąd niż to będzie określać jak duplikatu wpisu związanego itp
Nie jest najlepszym sposobem, ponieważ przyczyna może być inna. Istnieje rozwiązanie dla każdego przypadku z WYJĄTKOWYM WYJĄTKOWYM POZIOMEM. Opublikuj swój problem, a niektórzy użytkownicy pomogą Ci rozwiązać –
Cześć Mr @GabrieleMariotti, Mam aktualizację dla mojej sprawy, robi mi to dużo czasu, więc chcę zapytać o ogólny przypadek. – phongvan
Po przesłaniu stosu problemu gradle. Aby uzyskać więcej szczegółów, użyj zestawu gradlew --info. –