web-dev-qa-db-ja.com

android studio with Javaコンパイラエラー:文字列が大きすぎて、 'STRING_TOO_LARGE'として書き込まれたUTF-8を使用してエンコードできません

AndroidスタジオでAndroidプロジェクトをクリーンアップすると、エラーが発生します。以前のコミットまたは別のブランチに戻りました。この質問を確認しましたが、プロジェクトに追加された大きな画像や文字列はありません。 コスリンのSTRING_TOO_LARGE文字列

19
Xianwei

とりあえず、Gradleバージョンをダウングレードしてこの問題を解決できます。以下の3.1.3のようなgradle 3.1バージョンを使用してください。

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

私は同じに遭遇し、 ビルドキャッシュをクリア で修正しました。

9
Kalu Khan Luhar

私はこの問題にこだわってこのトピックを一読しましたが、将来のソリューションを提供してくれる人はいませんでした。私はGradleを元に戻したくありませんでした。したがって、ここに更新された依存関係へのリンクがあります https://github.com/stripe/stripe-Android 。 「Android Studio(またはGradle)」セクションを探してください。この"implementation 'com.stripe:stripe-Android:8.1.0'"が表示されるはずです。build.gradleファイルで縮小を有効にしている場合は、"-keep class com.stripe.Android.** { *; }"を追加する必要があります。

全体的なStripeは、 here にある独自の「Stripe docs」の更新を停止しました。彼らに信用を与えるために彼らのドキュメントは有用であり、少なくとも一度は読むべきですが、ほとんどのドキュメントは私がこれを書いたときに時代遅れであることに注意してください...

お役に立てれば :)

9
ILMTL

AAPT(Android sdk/build-toolsから)を使用してAPKを調べ、次のコマンドラインで問題のある文字列を探します(Linux):

// 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'

犯人を指摘する必要があります。私の場合、それは:

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

上記の解決策はどれも私にとってはうまくいきませんでした。最終的に問題の原因となったのは、それが示すように、文字列が大きすぎることでした。具体的には、valuesディレクトリの下にあるarrays.xmlファイルに、アプリ内で使用されているいくつかのSVG配列があり、コメントアウトして問題を解決しました。

リソースディレクトリ(/ res)のどこかに長い文字列があることがわかっている場合は、大きな文字列が潜んでいるかどうかを確認してください。

また、 このソリューション は他の人を助けるかもしれませんが、このスレッドではリンクされていません。

3
Silmarilos

描画可能ファイルで<?xml version="1.0" encoding="utf-8"?>を使用するだけです。

例:

<?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