wake-up-neo.com

android Studio mit Java-Compiler-Fehler: Zeichenfolge zu groß, um mit UTF-8 zu kodieren, stattdessen als 'STRING_TOO_LARGE'

Wenn ich das Android-Projekt in Android Studio bereinige, tritt der Fehler auf, ich habe mich auf ein vorheriges Commit oder einen anderen Zweig zurückgezogen, der vor ein paar Tagen funktioniert, aber jetzt hat dieser Fehler. Ich habe diese Frage überprüft und es wurden keine großen Bilder oder Zeichenfolgen für mein Projekt hinzugefügt. STRING_TOO_LARGE Zeichenfolge in Kothlin

11
Xianwei

Sie können die Gradle-Version zunächst herunterstufen, um dieses Problem zu beheben. Verwenden Sie die gradle 3.1-Version wie in 3.1.3 beschrieben.

  classpath 'com.Android.tools.build:gradle:3.1.3'
14
stevyhacker

Ich hatte das gleiche gefunden und durch den Build-Cache löschen behoben.

5
Kalu Khan Luhar

Ich war an diesem Problem festgeblieben und habe dieses Thema durchgelesen, und niemand hat eine zukünftige Lösung geliefert. Ich wollte mein Gradle NICHT zurückstellen. Daher ist hier der Link zu den aktualisierten Abhängigkeiten https://github.com/stripe/stripe-Android . Suchen Sie nach dem Abschnitt "Android Studio (oder Gradle)", und Sie sollten diese "Implementierung 'com.stripe: stripe-Android: 8.1.0'" sehen. Außerdem müssen Sie möglicherweise die -keep-Klasse com.stripe.Android. * Hinzufügen. * {*;} ", wenn Sie die Minifizierung in Ihrer build.gradle-Datei aktivieren.

Overall Stripe hat die Aktualisierung seiner eigenen "Stripe Docs" eingestellt, die hier gefunden werden können. Um sie zu würdigen, sind ihre Dokumente hilfreich und sollten mindestens einmal gelesen werden. Beachten Sie jedoch, dass die meisten Dokumente nicht mehr aktuell sind, als ich dies geschrieben habe ... 

Hoffe das hilft :)

3
ILMTL

Sie können AAPT (von den Android-SDK/Build-Tools) verwenden, um den APK zu überprüfen und mit der folgenden Befehlszeile (Linux) nach dem fehlerhaften String zu suchen:

// Linux/Mac
./aapt dump --values resources MyAppName-regular-debug.apk | grep -B 1 'STRING_TOO_LARGE'

// Windows
aapt dump --values resources MyAppName-regular-debug.apk | grep -B 1 'STRING_TOO_LARGE'

Was sollte Sie auf den Täter hinweisen. In meinem Fall war es:

resource 0x7f0f015a com.example.app:string/eula: t=0x03 d=0x00000f10 (s=0x0008 r=0x00)
      (string8) "STRING_TOO_LARGE"
1
Veener

benutz einfach <?xml version="1.0" encoding="utf-8"?> vorher in Ihrer Zeichnungsdatei.

Beispiel:

<?xml version="1.0" encoding="utf-8"?>
<vector
    Android:autoMirrored="true"
    Android:height="24dp"
    Android:viewportHeight="490.282"
    Android:viewportWidth="490.282"
    Android:width="24dp"
    xmlns:Android="http://schemas.Android.com/apk/res/Android">
    <path
        Android:fillColor="#fff"
        Android:pathData="M0.043,245.197c0.6,10.1 7.3,18.6 17,21.5l179.6,54.3l6.6,123.8c0.3,4.9 3.6,9.2 8.3,10.8c1.3,0.5 2.7,0.7 4,0.7c3.5,0 6.8,-1.4 9.2,-4.1l63.5,-70.3l90,62.3c4,2.8 8.7,4.3 13.6,4.3c11.3,0 21.1,-8 23.5,-19.2l74.7,-380.7c0.9,-4.4 -0.8,-9 -4.2,-11.8c-3.5,-2.9 -8.2,-3.6 -12.4,-1.9l-459,186.8C5.143,225.897 -0.557,235.097 0.043,245.197zM226.043,414.097l-4.1,-78.1l46,31.8L226.043,414.097zM391.443,423.597l-163.8,-113.4l229.7,-222.2L391.443,423.597zM432.143,78.197l-227.1,219.7l-179.4,-54.2L432.143,78.197z"/>
</vector>
0
Masum

Keine der oben genannten Lösungen funktionierte für mich. Die Ursache des Problems war, wie es heißt, ein zu großer String. In meiner arrays.xml -Datei unter dem Werteverzeichnis hatte ich einige SVG-Arrays, die in meiner App verwendet wurden, und das Kommentieren löste das Problem. 

Wenn Sie sicher sind, dass sich in Ihren Ressourcenverzeichnissen (/ res) längere Strings befinden, prüfen Sie, ob große Strings vorhanden sind, die möglicherweise lauern. 

Diese Lösung kann anderen helfen, war aber in diesem Thread nicht verlinkt.

0
Silmarilos