Glide 4.9.0 无法使用MyAppGlideModule加载firebase图片
Glide 4.9.0 can't use MyAppGlideModule to load firebase picture
我使用Glide 4.9.0加载图片,但我想加载firebase图片,所以我创建了一个class MyAppGlideModule
来覆盖,之后我清理我的项目并重建它,但是还是不能用GlideApp
加载图片,MyAppGlideModule
还是显示未使用
我没有在我的代码中添加annotationProcessor 'com.github.bumptech.glide:compiler:4.9.0'
,因为我migrate to AndroidX
之后会出现编译错误。
如何修复它,或者它有什么方法可以显示 firebase 图片,谢谢。
这是我的 MyAppGlideModule
class:
@GlideModule
public class MyAppGlideModule extends AppGlideModule {
@Override
public void registerComponents(Context context, Glide glide, Registry registry) {
registry.append(StorageReference.class, InputStream.class,
new FirebaseImageLoader.Factory());
}
}
这是我要在recyclerview中加载图片:
StorageReference pathReference = FirebaseStorage.getInstance().getReference().child(post.img);
Glide.with(mContext)
.load(pathReference)
.diskCacheStrategy(DiskCacheStrategy.RESOURCE)
.placeholder(R.drawable.ic_load_img)
.into(((PostViewHolder) holder).postcard_img);
这是我的 bulide.gradle:
dependencies {
implementation fileTree(include: ['*.jar'], dir: 'libs')
implementation 'androidx.appcompat:appcompat:1.0.0'
implementation 'androidx.constraintlayout:constraintlayout:1.1.3'
testImplementation 'junit:junit:4.12'
androidTestImplementation 'androidx.test:runner:1.1.0'
androidTestImplementation 'androidx.test.espresso:espresso-core:3.1.0'
implementation 'com.google.android.material:material:1.0.0'
implementation 'androidx.cardview:cardview:1.0.0'
implementation 'androidx.recyclerview:recyclerview:1.0.0'
implementation 'androidx.browser:browser:1.0.0'
implementation 'com.android.billingclient:billing:2.0.2'
implementation 'com.nostra13.universalimageloader:universal-image-loader:1.9.5'
implementation 'com.github.chrisbanes:PhotoView:2.1.4'
implementation 'com.github.bumptech.glide:glide:4.9.0'
implementation 'com.github.bumptech.glide:annotations:4.9.0'
implementation 'com.google.android.gms:play-services-auth:17.0.0'
implementation 'com.google.firebase:firebase-core:17.0.1'
implementation 'com.google.firebase:firebase-auth:18.1.0'
implementation 'com.google.firebase:firebase-storage:18.1.1'
implementation 'com.google.firebase:firebase-database:18.0.1'
implementation 'com.google.firebase:firebase-messaging:19.0.1'
implementation 'com.google.firebase:firebase-ads:18.1.1'
implementation 'com.firebaseui:firebase-ui-storage:5.0.0'
implementation 'com.facebook.android:audience-network-sdk:5.4.1'
implementation 'com.facebook.android:facebook-android-sdk:5.4.0'
implementation 'de.hdodenhof:circleimageview:3.0.0'
implementation files('libs/jsch-0.1.55.jar')
}
如果我在 build.grade 中添加 annotationProcessor 'com.github.bumptech.glide:compiler:4.9.0'
,我将得到这些错误代码:
C:/Users/Myapp/AndroidStudioProjects/PGapp
app/build/generated/source/apt/debug/com/gmpsykr/goma/GlideOptions.java
error: package android.support.annotation does not exist
error: package android.support.annotation does not exist
error: cannot find symbol class CheckResult
error: cannot find symbol class CheckResult
error: cannot find symbol class CheckResult
error: cannot find symbol class CheckResult
error: cannot find symbol class CheckResult
error: cannot find symbol class CheckResult
error: cannot find symbol class CheckResult
error: cannot find symbol class CheckResult
error: cannot find symbol class CheckResult
error: cannot find symbol class CheckResult
error: cannot find symbol class CheckResult
error: cannot find symbol class CheckResult
error: cannot find symbol class CheckResult
error: cannot find symbol class CheckResult
error: cannot find symbol class CheckResult
error: cannot find symbol class CheckResult
error: cannot find symbol class CheckResult
error: cannot find symbol class CheckResult
error: cannot find symbol class CheckResult
error: cannot find symbol class CheckResult
error: cannot find symbol class CheckResult
error: cannot find symbol class CheckResult
error: cannot find symbol class CheckResult
error: cannot find symbol class CheckResult
error: cannot find symbol class CheckResult
error: cannot find symbol class CheckResult
app/build/generated/source/apt/debug/com/gmpsykr/goma/GlideRequest.java
app/build/generated/source/apt/debug/com/gmpsykr/goma/GlideRequests.java
app/build/generated/source/apt/debug/com/bumptech/glide/GeneratedRequestManagerFactory.java
app/build/generated/source/apt/debug/com/bumptech/glide/GeneratedAppGlideModuleImpl.java
我找到了解决方案,添加
implementation "com.android.support:support-annotations:28.0.0"
annotationProcessor "com.android.support:support-annotations:28.0.0"
Glide 4.9.0 好像还不支持AndroidX
我使用Glide 4.9.0加载图片,但我想加载firebase图片,所以我创建了一个class MyAppGlideModule
来覆盖,之后我清理我的项目并重建它,但是还是不能用GlideApp
加载图片,MyAppGlideModule
还是显示未使用
我没有在我的代码中添加annotationProcessor 'com.github.bumptech.glide:compiler:4.9.0'
,因为我migrate to AndroidX
之后会出现编译错误。
如何修复它,或者它有什么方法可以显示 firebase 图片,谢谢。
这是我的 MyAppGlideModule
class:
@GlideModule
public class MyAppGlideModule extends AppGlideModule {
@Override
public void registerComponents(Context context, Glide glide, Registry registry) {
registry.append(StorageReference.class, InputStream.class,
new FirebaseImageLoader.Factory());
}
}
这是我要在recyclerview中加载图片:
StorageReference pathReference = FirebaseStorage.getInstance().getReference().child(post.img);
Glide.with(mContext)
.load(pathReference)
.diskCacheStrategy(DiskCacheStrategy.RESOURCE)
.placeholder(R.drawable.ic_load_img)
.into(((PostViewHolder) holder).postcard_img);
这是我的 bulide.gradle:
dependencies {
implementation fileTree(include: ['*.jar'], dir: 'libs')
implementation 'androidx.appcompat:appcompat:1.0.0'
implementation 'androidx.constraintlayout:constraintlayout:1.1.3'
testImplementation 'junit:junit:4.12'
androidTestImplementation 'androidx.test:runner:1.1.0'
androidTestImplementation 'androidx.test.espresso:espresso-core:3.1.0'
implementation 'com.google.android.material:material:1.0.0'
implementation 'androidx.cardview:cardview:1.0.0'
implementation 'androidx.recyclerview:recyclerview:1.0.0'
implementation 'androidx.browser:browser:1.0.0'
implementation 'com.android.billingclient:billing:2.0.2'
implementation 'com.nostra13.universalimageloader:universal-image-loader:1.9.5'
implementation 'com.github.chrisbanes:PhotoView:2.1.4'
implementation 'com.github.bumptech.glide:glide:4.9.0'
implementation 'com.github.bumptech.glide:annotations:4.9.0'
implementation 'com.google.android.gms:play-services-auth:17.0.0'
implementation 'com.google.firebase:firebase-core:17.0.1'
implementation 'com.google.firebase:firebase-auth:18.1.0'
implementation 'com.google.firebase:firebase-storage:18.1.1'
implementation 'com.google.firebase:firebase-database:18.0.1'
implementation 'com.google.firebase:firebase-messaging:19.0.1'
implementation 'com.google.firebase:firebase-ads:18.1.1'
implementation 'com.firebaseui:firebase-ui-storage:5.0.0'
implementation 'com.facebook.android:audience-network-sdk:5.4.1'
implementation 'com.facebook.android:facebook-android-sdk:5.4.0'
implementation 'de.hdodenhof:circleimageview:3.0.0'
implementation files('libs/jsch-0.1.55.jar')
}
如果我在 build.grade 中添加 annotationProcessor 'com.github.bumptech.glide:compiler:4.9.0'
,我将得到这些错误代码:
C:/Users/Myapp/AndroidStudioProjects/PGapp
app/build/generated/source/apt/debug/com/gmpsykr/goma/GlideOptions.java
error: package android.support.annotation does not exist
error: package android.support.annotation does not exist
error: cannot find symbol class CheckResult
error: cannot find symbol class CheckResult
error: cannot find symbol class CheckResult
error: cannot find symbol class CheckResult
error: cannot find symbol class CheckResult
error: cannot find symbol class CheckResult
error: cannot find symbol class CheckResult
error: cannot find symbol class CheckResult
error: cannot find symbol class CheckResult
error: cannot find symbol class CheckResult
error: cannot find symbol class CheckResult
error: cannot find symbol class CheckResult
error: cannot find symbol class CheckResult
error: cannot find symbol class CheckResult
error: cannot find symbol class CheckResult
error: cannot find symbol class CheckResult
error: cannot find symbol class CheckResult
error: cannot find symbol class CheckResult
error: cannot find symbol class CheckResult
error: cannot find symbol class CheckResult
error: cannot find symbol class CheckResult
error: cannot find symbol class CheckResult
error: cannot find symbol class CheckResult
error: cannot find symbol class CheckResult
error: cannot find symbol class CheckResult
error: cannot find symbol class CheckResult
app/build/generated/source/apt/debug/com/gmpsykr/goma/GlideRequest.java
app/build/generated/source/apt/debug/com/gmpsykr/goma/GlideRequests.java
app/build/generated/source/apt/debug/com/bumptech/glide/GeneratedRequestManagerFactory.java
app/build/generated/source/apt/debug/com/bumptech/glide/GeneratedAppGlideModuleImpl.java
我找到了解决方案,添加
implementation "com.android.support:support-annotations:28.0.0"
annotationProcessor "com.android.support:support-annotations:28.0.0"
Glide 4.9.0 好像还不支持AndroidX