Производительность RemoteViews в Android

Я пытаюсь написать небольшое приложение в Android. Мое приложение на виджетах. У меня есть основные сомнения по поводу использования RemoteViews. Я обнаружил, что всякий раз, когда я обновляю какую-то кнопку или макет пользовательского интерфейса, создается новый объект удаленного просмотра. Будет ли это проблема с производительностью? Пример кода такой:

http://android-developers.blogspot.com/2009/04/introducing-home-screen-widgets-and.html

updateViews = new RemoteViews(context.getPackageName(), R.layout.widget_message);

даже для обновления представлений каждый раз создается новый объект удаленного просмотра. Пожалуйста, помогите мне понять это.

2 ответа

Решение

Нет, это не проблема. Я работаю с примером StackViewsWidget для создания сотового виджета, в котором есть RemoteViews для каждой карты в колоде представлений, которые перемешиваются при покупке, и каждая карта перерабатывается и перестраивается из того, что я могу сказать в отладчике, и это гладко, как переворачивание масла через взгляды на моем Xoom.

Вы можете рассмотреть возможность создания только одного объекта с использованием шаблона синглтона. Это может быть сделано путем реализации синглтона для вашего класса RemoteViews и последующего использования этого синглтона для создания объекта RemoteViews. На самом деле проблема заключается в памяти компьютера, на котором вы запускаете приложение для Android. Если вы можете увеличить его, выполнив некоторые настройки профилирования и производительности, то вы можете очень хорошо создавать новые объекты, используя приведенный выше код. Но если у вас есть ограничение, я бы предложил шаблон синглтона. Это решение предполагает, что машина, на которой вы работаете, обладает достаточной вычислительной мощностью.

Другие вопросы по тегам