Glide 4.10.0:java.lang.IllegalStateException:GeneratedAppGlideModuleImplが正しく実装されていない


11

Glide 4.10.0の使用中にエラーが発生する

これはエラーです

java.lang.IllegalStateException: GeneratedAppGlideModuleImpl is implemented incorrectly. If you've manually implemented this class, remove your implementation. The Annotation processor will generate a correct implementation.

あなたはこれを解決しましたか?
Juvi

いいえ、まだ違います。解決策が見つからない場合は、以下の答えを試してください。
Mohd Naushad

私の場合、それはgoogle-map-v3-beta sdkが原因で発生します。V2にダウングレードすると機能します。
ジュビ

回答:


2

私の場合、アプリにGoogleマップを表示しようとしたときにこのバグが発生しました。具体的にはgoogle-map-v3-betaSDK。

SDKには難読化されたバージョンのGlideが含まれており、アプリがGlideも使用しているときに機能しなくなり、最後のAndroidManifest.xmlに「GlideModule」というメタデータ要素が含まれているようです。

そのため、Googleトラッカーに問題がありますhttps : //issuetracker.google.com/issues/132323222

私にとっての解決策は、マップv2に戻すことでした。


同じことが私にも起こりました!
ダニエルゴメスリコ

9

初めにすること:

annotationProcessor依存関係を変更しましたか:

implementation 'com.github.bumptech.glide:glide:4.10.0'
annotationProcessor 'com.github.bumptech.glide:compiler:4.10.0'

第二のもの:

次のようにプロガードルールを追加しましたか?

-keep public class * implements com.bumptech.glide.module.GlideModule
-keep public class * extends com.bumptech.glide.module.AppGlideModule
-keep public enum com.bumptech.glide.load.ImageHeaderParser$** {
  **[] $VALUES;
  public *;
}

それがあなたを助けることを願っています。ありがとうございました。


1
私は同じことをしましたが、機能しませんでした
tmz13

あなたのエラーは何ですか?
Pratik Butani

グライド4.11.0を使用していて、同様の問題に直面しました。@PratikButaniが答えたように、実装とannotationProcessorのバージョン番号が同じであることを確認してください。
YazidEF

0

アプリで同様の問題が発生しました。Glideライブラリを4.9.0から4.11.0にアップグレードしました。

前:

implementation 'com.github.bumptech.glide:glide:4.11.0'
annotationProcessor 'com.github.bumptech.glide:compiler:4.9.0'
implementation ('com.github.bumptech.glide:okhttp3-integration:4.9.0'){
    exclude group: 'glide-parent'
}

後:

implementation 'com.github.bumptech.glide:glide:4.11.0'
annotationProcessor 'com.github.bumptech.glide:compiler:4.11.0'
implementation ('com.github.bumptech.glide:okhttp3-integration:4.11.0'){
    exclude group: 'glide-parent'
}

これで問題が解決しました。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.