Я разрабатываю живые обои, которые воспроизводят анимацию (например, короткое видео) на заднем плане.
Кто-нибудь знает, как эффективно загружать различные полноэкранные растровые изображения и рисовать их на холсте? Я пробовал 2 подхода, и оба не очень хороши.
Подход № 1: загружать все растровые изображения при запуске обоев.
Проблема: Избыток памяти (около 35 МБ) не позволяет загрузить более 10 растровых изображений. Поэтому анимации не хватает разных изображений.
Подход № 2: загрузите только 2 растровых изображения. Во время выполнения рисуйте растровое изображение, удаляйте старое растровое изображение, загружайте новое растровое изображение, повторяйте.
Проблема: Потребляет много системы (не памяти, а замедляет ОС в целом), однако работает, потому что не превышает лимита памяти. Но все равно тормозит всю систему.
пример:
Drawer.drawAll(res,c,p);
res.removeOldBitmaps();
res.loadNewBitmaps(wpservice,display);
Другой подход, о котором я думал, - это загрузка ресурса в отдельный поток, что вы, ребята, думаете об этом? у вас есть другие решения?
Ваше здоровье!