Ich aktualisiere eine Anwendung von 2.3 auf Nougat (SDK 25). Wenn ich com.android.support:appcompat-v7:25.0.0
hinzufüge, um ActivityCompat.requestPermissions
zu unterstützen. Wenn ich dies im Debug-Modus ausführe, läuft die Anwendung ohne Probleme, aber die Ausführung mit ./gradlew assembleDebug
verursacht den folgenden Fehler:
Wenn ich dies im Debug-Modus ausführe, baut die Anwendung ohne Probleme auf. Wenn ich jedoch versuche, Build APK
, bekomme ich den Fehler oben.
Gibt es eine Möglichkeit, das doppelte Paket aufzuspüren? Ich habe Folgendes ausgeführt:
%Vor% Hier ist mein build.gradle
Dateien in libs
: armeabi/libcryptowrapper.so
Dateien in lib
:
Beim Hinzufügen von exclude module: 'support-v4'
zu appcompat-v7
schlägt das Erstellen fehl und das Debug-Protokoll zeigt an, dass die Hauptaktivität nicht mit index out of bound, length: 0, index: 3
geladen werden kann:
Ausführen
%Vor% Running ./gradlew :dependencies
, da ich anscheinend keinen Projektnamen habe:
Danke für die Bearbeitung der Frage. Da es so viele Jar-Bibliotheken gibt, ist es für uns fast unmöglich, den Fehler zu replizieren.
Also, hier ist etwas zu versuchen. Da Sie angegeben haben, dass der Fehler aufgetreten ist, nachdem Sie die com.android.support:appcompat-v7:25.0.0
lib hinzugefügt haben, gehen Sie folgendermaßen vor:
Sehen Sie, ob es funktioniert oder ob sich der Fehler ändert
BEARBEITEN:
Sie haben den folgenden Befehl ausgeführt: ./gradlew -q dependencies :dependencies --configuration compile
Können Sie diesen Befehl in Ihrem Android Studio-Terminal ausführen und die Abhängigkeiten debugApk
und releaseApk
in Ihrer Frage veröffentlichen.
Befehl (ändern Sie die App zu Ihrem Modulnamen, falls dieser anders ist):
%Vor% Ich schätze, einige der Abhängigkeiten, die Sie hinzugefügt haben, haben appcompat-v4
in sich, was den Fehler verursacht, nicht ganz sicher
Mögliche Lösungen:
Entfernen Sie zip4j_1.3.2.jar
und fügen Sie sie erneut hinzu
compile 'com.android.support:appcompat-v7:24.2.0'
Der Vorschlag von @ th3pat3l: add
compile (compile 'com.android.support:appcompat-v7:25.0.0') {
exclude module: 'support-v4'
}
Tipp für Api-Versionen & gt; 14:
compile ''xxx.xx.xx
hinzufügst.
Ich bin auch auf dieses Problem gestoßen, als ich das alte Eclipse-Projekt importiert habe. Es ist eine alte Abhängigkeit als JAR-Datei im Projekt aufgetreten.
Erster Weg einfach entfernen
in Gradle-Datei
und fügen Sie eine Abhängigkeit in der Gradle-Datei hinzu.
Es funktioniert für mich ..
Zweiter Weg
Sie haben das wahrscheinlich schon behoben, aber damit das nicht unbeantwortet bleibt, versuchen Sie, dies zu Ihrem build.gradle:
Tags und Links android android-gradle