Я использую Glide 4.0 для загрузки изображений для просмотра в студии Android. То, что я хочу, это:
- Glide для непрерывной выборки изображений со временем каждые 30 с.
- URL-адрес меняется со временем, каждую минуту к нему добавляется дата в виде: base-url + yy.mm.dd-HH-MM
- Если URL-адрес не найден, я хочу, чтобы Glide использовал последнее найденное изображение из предыдущего URL-адреса.
Код Я использовал:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
final ImageView songImage = findViewById(R.id.songImage);
final Handler handler = new Handler();
handler.postDelayed(new Runnable() {
@Override
public void run() {
SimpleDateFormat sdf = new SimpleDateFormat("yyyy.MM.dd-HH-mm");
String currentDateandTime = sdf.format(new Date());
System.out.println("Current Time Formated----------------> " + currentDateandTime);
Glide.with(MainActivity.this)
.asGif()
.load("https://xxxxx.com/images/do_image-"+currentDateandTime+".gif")
//.signature(new ObjectKey(minutes))
.into(songImage);
handler.postDelayed(this, 30000);
}
},1000);
}
Код работает, если он находит правильный URL-адрес, но затем, после того, как miute заменяет изображение пустым и выдает исключение:
I/Glide: Root cause (1 of 1)
java.io.FileNotFoundException: https://xxxxxxx.com/images/do_image-2020.04.10-18-37.gif
Как можно Я достиг этого?