Я работаю над 2-мерным учебником и смог протестировать свою текущую часть учебника на Samsung Galaxy Tab.
В учебном пособии просто случайным образом перемещается значок по умолчанию по экрану. Одним касанием я создаю новый движущийся значок. Все работает нормально (постоянно 60 кадров в секунду) на Galaxy, пока на экране не более 25 элементов.
С 26-м элементом частота кадров падает до 25 кадров в секунду.
Когда я меняю размер / размер изображения к гораздо большему, я получаю менее 25 кадров в секунду перед 26-м элементом. Все в порядке. Но при некотором не очень воспроизводимом количестве элементов кадр падает с (в большинстве случаев более) 10 кадров в секунду до 1 кадра в секунду.
На моем Nexus One я могу добавить 150 элементов и все еще иметь 50 кадров в секунду.
Что я сделал: я изменил Переменная bitmap в статическую, поэтому не каждый элемент имеет собственное изображение, но все используют одно и то же. Это устранило поведение, но я сомневаюсь, что это хорошее решение. Магическое число 25 предполагает, что таким образом я могу использовать только 25 различных изображений.
Кто-нибудь знает, что может вызвать такое поведение? Это ошибка в модифицированной версии Samsung для Android?
Доступен мой пример проекта eclipse . Я был бы признателен, если бы какой-нибудь владелец Samsung проверил их работоспособность на образце.
edit
Коллега нашел решение. Он изменил способ загрузки растрового изображения с
mBitmap = BitmapFactory.decodeResource(res, R.drawable.icon);
на
mBitmap = BitmapFactory.decodeStream(new BufferedInputStream(res.openRawResource(R.drawable.icon)));
, но мы до сих пор не понимаем, почему это работает таким образом ...