Тестирование на устройстве Blackberry - добавление и удаление приложения несколько раз - PullRequest
2 голосов
/ 11 июня 2010

Для многих было бы полезно знать, как полностью удалить приложение с вашего устройства при тестировании. Я загружал свое приложение уже много раз, а также удалял его много раз. Проблема в том, что при удалении приложения оно не удаляет такие вещи, как постоянный объект, связанный с моим приложением, или изображения, загруженные через приложение. Поэтому, когда я загружаю следующую сборку, я понятия не имею, сломалось ли что-то, что связано со сборкой постоянного объекта или извлечением изображений, поскольку эти элементы уже существуют из последней сборки. Я не знаю, что это за кеш. Я не знаю, ожидается ли это, и мне нужно использовать какую-то утилиту, чтобы стереть эти данные после удаления приложения. Я не могу найти много информации с помощью обычного веб-поиска.

Любая информация будет оценена.

Blackberry Bold 9000. 4.6 ОС. протестировано как с SD-картой, так и без SD-карты.

Ответы [ 2 ]

1 голос
/ 11 июня 2010

Объекты, хранящиеся в PersistentStore, автоматически удаляются при удалении, если их интерфейсы были определены в вашем проекте. Если они из стандартного API BlackBerry, то они будут держаться, пока не будут удалены. Например, если вы сохраните строку в хранилище PersistentStore, она останется в хранилище PersistentStore, но если вы сохраните созданный вами класс, он будет удален при удалении. Поэтому, если вы хотите, чтобы эти объекты были удалены автоматически, просто создайте класс-оболочку и сохраните его.

Изображения, хранящиеся в файловой системе, не будут удалены, пока вы или какое-либо приложение не удалите их. Однако вам должно быть легко написать приложение, которое все прояснит.

0 голосов
/ 12 июня 2010

Еще одно решение, которое вы можете реализовать, - это сделать ваше приложение немного осведомленным о своих данных.

Создайте простое строковое значение, которое вы сохраняете (или, при желании, сохраняйте его в Hashtable, чтобы вы могли хранить многие свойства таким образом), которое включает «Version».

При запуске приложения с графическим интерфейсом сравните сохраненную «версию» с текущей версией приложения. Если сохраненная версия не существует или если она существует и соответствует, не предпринимайте никаких действий.

Если он существует и не совпадает, автоматически очищать старые сохраненные данные; или, альтернативно, попросите пользователя посмотреть, хотят ли они, чтобы эти данные были удалены (какая из них лучше будет зависеть от вашей реализации)

Вы также можете использовать CodeModuleListener для прослушивания события удаления - когда это произойдет, вы также можете выполнить очистку в это время или вместо него.

(В качестве самостоятельной и немного постыдной саморекламы, я сейчас работаю над разделяемой библиотекой для Blackberry, которая значительно упрощает управление сохранением, а также резервное копирование и восстановление данных на рабочем столе. Я делаю это как часть проект BBSSH, но я разделю его на отдельную библиотеку основных компонентов и опубликую его под двойной лицензией GPL / необязательной коммерческой лицензией. Он будет содержать хуки для очистки данных и управления версиями данных.)

...