You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@cordova.apache.org by "Joe Bowser (JIRA)" <ji...@apache.org> on 2013/04/05 19:29:15 UTC

[jira] [Resolved] (CB-2912) Android 4.X SQLite issue ( maybe conflict using websql)

     [ https://issues.apache.org/jira/browse/CB-2912?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Joe Bowser resolved CB-2912.
----------------------------

    Resolution: Not A Problem

This appears to actually be working correctly.  ON Android 4.x we switch to using our shim because permissions do not allow us to use the built-in WebSQL.  It appears that you're trying to create the same table twice.  I have no idea why you're not getting this issue on Android 2.x.

At any rate, you should be using localStorage to store key-value pairs, and not the WebSQL API since WebSQL has been deprecated and isn't on all platforms.
                
> Android 4.X SQLite issue ( maybe conflict using websql)
> -------------------------------------------------------
>
>                 Key: CB-2912
>                 URL: https://issues.apache.org/jira/browse/CB-2912
>             Project: Apache Cordova
>          Issue Type: Bug
>          Components: Android
>    Affects Versions: 2.6.0
>         Environment: Android 4.0.3 , Android 4.2 
>            Reporter: Thibault Durand
>            Assignee: Joe Bowser
>            Priority: Minor
>
> Hello, 
> I have an issue with my app using the last version of cordova with cordova CLI (NPM , version @2.6.0)
> Cordova version is master : commit 47593b2bc1dba9bf46545b1da24577f937966e12 
> My app use websql, and it seems there are some conflict with SQLite on Android 4.X , android 2.X works just fine (i don't really know what websql api uses...)
> Here is the stacktrace, the database seems to be initialized but each request trigger a System error : 
> 04-05 11:58:13.413: W/System.err(5739): android.database.sqlite.SQLiteException: table user_card already exists: , while compiling: CREATE TABLE user_card( id INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT, card_stat_id INTEGER, es TEXT, fr TEXT, it TEXT, de TEXT, esperanto TEXT, en TEXT, txt_es TEXT, txt_fr TEXT, txt_en TEXT, txt_it TEXT, txt_de TEXT, txt_esperanto TEXT, typeCard TEXT, usage TEXT, genre TEXT, image TEXT, licence TEXT, sound TEXT, linked_card TEXT, tags TEXT, category TEXT, level INTEGER );
> 04-05 11:58:13.413: W/System.err(5739):     at android.database.sqlite.SQLiteCompiledSql.native_compile(Native Method)
> 04-05 11:58:13.413: W/System.err(5739):     at android.database.sqlite.SQLiteCompiledSql.<init>(SQLiteCompiledSql.java:68)
> 04-05 11:58:13.413: W/System.err(5739):     at android.database.sqlite.SQLiteProgram.compileSql(SQLiteProgram.java:134)
> 04-05 11:58:13.413: W/System.err(5739):     at android.database.sqlite.SQLiteProgram.compileAndbindAllArgs(SQLiteProgram.java:361)
> 04-05 11:58:13.413: W/System.err(5739):     at android.database.sqlite.SQLiteStatement.acquireAndLock(SQLiteStatement.java:260)
> 04-05 11:58:13.413: W/System.err(5739):     at android.database.sqlite.SQLiteStatement.executeUpdateDelete(SQLiteStatement.java:84)
> 04-05 11:58:13.413: W/System.err(5739):     at android.database.sqlite.SQLiteDatabase.executeSql(SQLiteDatabase.java:2034)
> 04-05 11:58:13.413: W/System.err(5739):     at android.database.sqlite.SQLiteDatabase.execSQL(SQLiteDatabase.java:1974)
> 04-05 11:58:13.413: W/System.err(5739):     at org.apache.cordova.Storage.executeSql(Storage.java:169)
> 04-05 11:58:13.413: W/System.err(5739):     at org.apache.cordova.Storage.execute(Storage.java:83)
> 04-05 11:58:13.413: W/System.err(5739):     at org.apache.cordova.api.CordovaPlugin.execute(CordovaPlugin.java:66)
> 04-05 11:58:13.413: W/System.err(5739):     at org.apache.cordova.api.PluginManager.exec(PluginManager.java:222)
> 04-05 11:58:13.413: W/System.err(5739):     at org.apache.cordova.ExposedJsApi.exec(ExposedJsApi.java:44)
> 04-05 11:58:13.413: W/System.err(5739):     at android.webkit.JWebCoreJavaBridge.sharedTimerFired(Native Method)
> 04-05 11:58:13.413: W/System.err(5739):     at android.webkit.JWebCoreJavaBridge.sharedTimerFired(Native Method)
> 04-05 11:58:13.413: W/System.err(5739):     at android.webkit.JWebCoreJavaBridge.fireSharedTimer(JWebCoreJavaBridge.java:92)
> 04-05 11:58:13.413: W/System.err(5739):     at android.webkit.JWebCoreJavaBridge.handleMessage(JWebCoreJavaBridge.java:108)
> 04-05 11:58:13.413: W/System.err(5739):     at android.os.Handler.dispatchMessage(Handler.java:99)
> 04-05 11:58:13.413: W/System.err(5739):     at android.os.Looper.loop(Looper.java:137)
> 04-05 11:58:13.413: W/System.err(5739):     at android.webkit.WebViewCore$WebCoreThread.run(WebViewCore.java:823)
> 04-05 11:58:13.413: W/System.err(5739):     at java.lang.Thread.run(Thread.java:856)
> Cordova 2.5.0 and under works fine.
> Thanks

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira