понедельник, 5 сентября 2011 г.

Dev : Отображение списка изменений в программе под Android

Если Вам понадобилось показать пользователю новые возможности Вашей программы после обновления (а на мой взгляд это делать обязательно, т.к. далеко не все смотрят на описание в маркете), то не стоит изобретать велосипед.

Все уже украдено до нас. На Google Code есть небольшой проект из одного единственного файла, и называется он android-change-log.
Использовать его крайне просто, достаточно скопировать файл ChangeLog.java, добавить в ресурсники 3 строчки с текстом для заголовка диалога и кнопки OK, добавить файл res/raw/changelog.txt с описанием нововведений и вставить код для его запуска:
ChangeLog changeLog = new ChangeLog(this);
if (changeLog.firstRun())
changeLog.getLogDialog().show();
Все, теперь у Вас будет красивый диалог с поддержкой html наподобие представленного ниже:
Структуру файла changelog.txt можно найти на странице проекта, поэтому не буду вдаваться в подробности. А вот про использование данного диалога с русским текстом расскажу. Проблема в том, что используемый в диалоге метод загрузки контента имеет баг. Так что для корректного отображения русских букв нужно заменить
webView.loadData(this.getLog(full), "text/html", "utf-8");
на
webView.loadDataWithBaseURL(null, this.getLog(full), "text/html", "utf-8", null);
Теперь можете спокойно использовать данный класс во всех своих проектах. Автору я уже написал, но у него сейчас нет времени, так что когда он обновит код или добавит в описание - не известно.

Комментариев нет: