У меня возникло множество проблем с получением моего приложения для работы с использованием базы данных sqlite. Все работает очень хорошо в рябь (я полагаю, это потому, что он просто использует реализацию chrome sqlite). Однако, как только я запускаю свое приложение на симуляторе (Curve 9300, OS 6), проблемы начинаются. Я пришел туда, где приложение может запускаться, создавать базу данных и вставлять строки, поэтому я знаю, что мои актуальные запросы в порядке.Проблемы с базой данных BlackBerry WebWorks HTML5
Мое приложение имеет javascript-файл с оболочками для работы с базой данных. Этот файл javascript поступает как в слушатель, так и на страницу, которая является ядром приложения. Проблема заключается в следующем:
- Установите приложение. Слушатель начинает работать.
- Отправьте текстовое сообщение с одного тренажера на другой. Сообщение успешно сохраняется (я могу проверить это, потому что подсчет индикатора моего баннера увеличивается, а число основано на запросе)
- Продолжайте отправлять тексты, а индикатор баннера будет увеличиваться.
- Откройте приложение и прочитайте все сообщения. На этом этапе файл javascript загружается дважды, поэтому у меня есть два объекта db, указывающие на одну и ту же базу данных.
- Закройте приложение (слушатель все еще работает)
- Следующее полученное текстовое сообщение вызывает исключение времени выполнения, без дополнительной информации.
Я посмотрел на трассировку стека, и он просто говорит, что исключение имело место в обратном вызове слушателя sms. Это очевидно, так как это происходит. Кто-нибудь знает, почему открытие второго соединения с db вызывает исключение? Насколько я понимаю, db блокируется только во время транзакции. Безусловно, транзакций нет, кроме тех, которые пытаются вставить новую строку. Хотя я новичок в javascript, я совершенно уверен, что никакие переменные не используются, поскольку файл javascript загружается на две разные страницы. Любые идеи очень приветствуются.
код? трассировки стека? –