我有一個基於Web的Android應用程序,它使用WebSQL進行存儲。出於某種原因,在一個點(響應按鈕單擊)調用openDatabase
,導致DOMException
帶有消息"SECURITY_ERR: DOM Exception 18"
。SECURITY_ERR:DOM上的異常18 openDatabase上
請注意,我沒有使用PhoneGap。
我在這裏問的主要問題是:openDatabase
上DOMException 18的可能原因是什麼?
更多詳細信息: 只有在數據庫尚不存在的情況下才會發生此異常。如果它已經存在,它按預期工作。調用openDatabase
的函數在應用程序的另一部分中使用,並且工作得很好。
我到目前爲止已經試過:
- 減小數據庫的大小 - 因爲它是由應用程序的另一部分產生不應該是一個問題。
- 我檢查過外部存儲權限 - 再次,不應該是一個問題。
- 我在某處讀到插入的USB電纜可能導致此問題 - 在這種情況下不會造成這種情況。
編輯: 這是命令的樣子:
db = openDatabase('my_database', '1.0', 'My database description', 5*1024*1024, function() {});
是問題解決了......我面臨同樣的問題... – Aravin
從來沒有找出原因是什麼。最後,我發現WebSQL的穩定性在我的需求不同的Android設備/版本上過於不一致,所以我最終編寫了一個原生界面,結果證明它更好。雖然我不再需要這個問題的答案,但是出於好奇的緣故,我仍然有興趣聽到一個問題。 – Goldsmith
我解決了這個問題..嚴格地說在設備就緒功能裏面打開數據庫.... – Aravin