Почему удаляются данные из базы данных на приложении сделанной на apache cordova?
Привет.
Есть приложение. Данные хранятся в базе данных webSQL (база данных в броузере) Чтоб понятнее было подключается так var db = window.openDatabase("Database", "1.0", "Cordova Demo", 200000);
Приложение успешно работает.
Но у некоторых пользователей пропадают данные. Грешу на программы Cleaner - ы. Как можно сделать чтобы данные
не удалялись?
А как там реализована поддержка WebSQL? В таком фреймворке по-хорошему должна быть своя реализация, если это не так то на старых браузерах не будет работать как надо, подробнее на Caniuse.
Тогда обращайтесь к Java API android.sqlite либо SharedPreferences и реализуйте сами, еще не помешало бы пользователей самих спросить, что мешает это сделать?
Стас Денсис: Лично я не знаю как там реализовано, и специально для вас разбираться не буду.
На Android 6 наверно уже есть WebSQL, но еще раз - смотрите Caniuse.
Только перезагрузка телефона или остановка приложения (завершение его процесса) тоже дает такой результат?
Попробуйте эмулятор Android 6.
Стас Денсис: Еще локализовать проблему можно попробовать, напишите код который делает что-то подобное но просто для браузера, без Cordova, и проверьте работу, если опять проблема на 6 то уже выше вероятность найти проблему, можно и сообщить разработчикам Android об issue.
Стас Денсис: Техническая возможность переопределить - существует, нельзя исключать что они зачем-то решили ей воспользоваться, все люди дураки, и все п...т, не надо никому верить на ровные 100%.
Rou1997: в зарубежных форумах пишут что у IOS 5+ тоже бывают проблемы с localstorage и websql Ибо данные записываются в временную папку. Вероятно на 6 androide то же самое. После перезагрузки временная папка удаляется, и данные летят в трубу. Как вариант : все перенести SQLlite самой системы.только скорость упадет наверно.
Стас Денсис: Почему упадет скорость? Обычно наоборот, что работает ненадежно у того и проблемы с производительностью, это какая-то эзотерика конечно, но немало примеров.
Попробуйте на "кошках", то есть маленькой БД.
Стас Денсис: Насчет гнева - вообще-то это не ваша вина, ну уж точно не совсем ваша, так и объясните пользователям, обычно помогает. А сперва все-таки изучите проблему и поищите решение, тогда и пользователям будет легче объяснить и не придется переходить и в будущем новые знания не помешают.