Метод openDatabase () генерирует исключение (SECURITY_ERR: DOM Exception 18) - PullRequest
4 голосов
/ 22 сентября 2011

Метод openDatabase () создает исключение ( SECURITY_ERR: DOM Exception 18 ) на iPad 4.3, а также на всех iOS Simulator 4.x, если размер базы данных превышает 5 МБ.

Компиляция под XCode 4.2 (Mac OS X 10.6.8) с использованием PhoneGap 1.0.0.

Можем ли мы обойти это ограничение?

Вот пример кода:

<!DOCTYPE html> 
<html> 
<head> 
    <script src="phonegap-1.0.0.js"></script>
    <script>        
        try {
            var db = window.openDatabase("TMA", "1.0", "TMA Mobile Database", 1024 * 1024 * 10);
        } catch (err) {
            alert(err);
        }
    </script> 
    <meta name="viewport" content="width=320; initial-scale=1.0; maximum-scale=1.0; user-scalable=0;" />
</head> 
<body> 

</body>
</html>

1 Ответ

3 голосов
/ 23 сентября 2011

Согласно этому ресурсу максимальный размер, устанавливаемый самой iOS, составляет 5 МБ.Как только он достигнет 5 МБ, он спросит пользователя, хотят ли они, чтобы он стал больше.

Я сомневаюсь, что есть хороший способ обойти это.

Вы пытались создать более одной БД?Возможно, вам подойдут две 5-мегабайтные БД.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...