作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我使用以下代码通过 Firebase 数据库
从 Firebase 存储
中检索图像:
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState)
{
firebaseDatabase = FirebaseDatabase.getInstance();
databaseReference = firebaseDatabase.getReference("images");
}
@Override
public void onStart()
{
super.onStart();
ValueEventListener listener = new ValueEventListener()
{
@Override
public void onDataChange(@NonNull DataSnapshot dataSnapshot)
{
for (DataSnapshot singleImage: dataSnapshot.getChildren())
{
SharableImageClass sharableImage = singleImage.getValue(SharableImageClass.class);
imagesList.add(sharableImage.getSharableImage());
}
ImagesAdapter addapter = new ImagesAdapter(getActivity(), imagesList);
imagesRecyclerView.setAdapter(addapter);
}
@Override
public void onCancelled(@NonNull DatabaseError databaseError)
{
Toast.makeText(getActivity(), "Error.. Cannot connect to Internet", Toast.LENGTH_SHORT).show();
}
};
databaseReference.addValueEventListener(listener);
}
这是 SharableImageClass.class:
public class SharableImageClass
{
public String sharableImage;
public SharableImageClass() {
}
public SharableImageClass(String sharableImage) {
this.sharableImage = sharableImage;
}
public String getSharableImage() {
return sharableImage;
}
public void setSharableImage(String sharableImage) {
this.sharableImage = sharableImage;
}
}
这是 ImagesAdapter 的一部分,我使用 Picasso 在 ImageView 中显示图像:
@Override
public void onBindViewHolder(@NonNull ImagesViewHolder holder, int position)
{
Picasso.get()
.load(imagesList.get(position).toString())
.fit()
.into(holder.imagesImageView);
}
当我在调试 模式下运行此代码时,一切正常。但是,当我创建一个签名的 apk 并运行该应用程序时,它显示以下异常:
No setter/field for sharableImage found on class com.ksdfunapps.ksdstickersforchat.a
代码有什么问题?这是 Firebase 数据库的结构:
最佳答案
在 proguard 文件中添加 proguard 规则而不是构建你签名的 APK
# Add this global rule
-keepattributes Signature
# This rule will properly ProGuard all the model classes in
# the package com.yourcompany.models. Modify to fit the structure
# of your app.
-keepclassmembers class com.yourcompany.models.** {
*;
}
有关更多说明,请参阅此 link
关于android - 如何在 Release模式下检索 firebase 存储图像?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53719548/
我是一名优秀的程序员,十分优秀!