Почему мое восстановленное изображение из Firebase не показывается / не отображается в программе повторного просмотра? - PullRequest
0 голосов
/ 24 апреля 2019

Я хочу загрузить изображение в базу данных хранилища и базы данных Firebase в режиме реального времени и просмотреть его в обзоре переработчика.Изображение также включает в себя текст, где пользователь может указать заголовок своего изображения.При попытке показать загруженные изображения в программе RecycleView виден только текст, но изображение не отображается. Ниже приведен мой адаптер программы восстановления: - База данных Firebase в реальном времени, хранящая URL-адрес изображения и имя

`package com.example.fieldhockeybooking;

import android.content.Context;
import android.support.v7.widget.RecyclerView;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ImageView;
import android.widget.TextView;

import com.bumptech.glide.Glide;

import java.util.List;


public class RecycleViewAdapter extends RecyclerView.Adapter<RecycleViewAdapter.ViewHolder> {

    Context context;
    List<AdvertUploadInfo> MainImageUploadInfoList;

    public RecycleViewAdapter(Context context, List<AdvertUploadInfo> TempList) {

        this.MainImageUploadInfoList = TempList;

        this.context = context;
    }

    @Override
    public ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {

        View view = LayoutInflater.from(parent.getContext()).inflate(R.layout.recyclerview_items, parent, false);

        ViewHolder viewHolder = new ViewHolder(view);

        return viewHolder;
    }

    @Override
    public void onBindViewHolder(ViewHolder holder, int position) {
        AdvertUploadInfo UploadInfo = MainImageUploadInfoList.get(position);

        holder.imageNameTextView.setText(UploadInfo.getImageName());

        //Loading image from Glide library.
        Glide.with(context)
                .load(UploadInfo.getImageURL())
                .into(holder.imageView);
    }

    @Override
    public int getItemCount() {

        return MainImageUploadInfoList.size();
    }

    class ViewHolder extends RecyclerView.ViewHolder {

        public ImageView imageView;
        public TextView imageNameTextView;

        public ViewHolder(View itemView) {
            super(itemView);

            imageView = (ImageView) itemView.findViewById(R.id.imageView);

            imageNameTextView = (TextView) itemView.findViewById(R.id.ImageNameTextView);
        }
    }
}
`

это то, что показано в моих приложениях для Android, когда я пытаюсь показать все загруженные изображения

Ответы [ 2 ]

0 голосов
/ 24 апреля 2019

Вы должны установить правила в базе данных реального времени firebase, чтобы получать изображения и отображать их в программе повторного просмотра.Проверить эту ссылку https://firebase.google.com/docs/database/security/

0 голосов
/ 24 апреля 2019

вы должны использовать правила безопасности с match /{allPaths=**}, чтобы указать, что публичный доступ на чтение и запись разрешен для всех путей:

service firebase.storage {
  match /b/savephoto-a1cc3.appspot.com/o {
    match /{allPaths=**} {
      // Allow access by all users
      allow read, write;
    }
  }
}
...