SQLite Android Bindings

Check-in [1b80ccf163]
Login

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

Overview
Comment:Update jni/README.
Downloads: Tarball | ZIP archive
Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA1: 1b80ccf16332de36b2f65e5768b1abf963174ca2
User & Date: dan 2013-12-21 19:32:46.485
Context
2013-12-23
07:33
Add extra required utility functions to ExtraUtils.java. (check-in: be6acc5363 user: dan tags: trunk)
2013-12-21
19:32
Update jni/README. (check-in: 1b80ccf163 user: dan tags: trunk)
19:02
Replace some leftover "android/database/" namespaces with "org/sqlite/database/". Make sure the native methods are all registered when the library is loaded. (check-in: b03c0713c9 user: dan tags: trunk)
Changes
Unified Diff Ignore Whitespace Patch
Changes to jni/README.
21
22
23
24
25
26
27
28
29



30
31
32
33
34
35
36
37
pointer to the current threads environment. Changed to store a pointer to the
process JavaVM (Android allows only one) as a global variable. Then retrieve
the JNIEnv as needed using GetEnv().

Replaced uses of class String8 with std::string in SQLiteConnection.cpp and a
few other places.

The various CursorWindow functions are not supported. There is no really good
reason for this, just that they proved difficult to extract from core android.



Maybe they can be added later.

The "LOCALIZED" collation and some miscellaneous user-functions added by the
sqlite3_android.cpp module are not included. A collation called LOCALIZED
that is equivalent to BINARY is added instead to keep various things working.
This should not cause serious problems - class SQLiteConnection always
runs "REINDEX LOCALIZED" immediately after opening a connection.








|
|
>
>
>
|







21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
pointer to the current threads environment. Changed to store a pointer to the
process JavaVM (Android allows only one) as a global variable. Then retrieve
the JNIEnv as needed using GetEnv().

Replaced uses of class String8 with std::string in SQLiteConnection.cpp and a
few other places.

The stock Android code to populate CursorWindow containers with the results of
a SELECT statement uses a C++ interface that is not available to NDK builds. So
this code is rewritten to call the CursorWindow java interface via JNI methods.
This is the largest source code change. See function 
nativeExecuteForCursorWindow() in file android_database_SQLiteConnection.cpp
for details.

The "LOCALIZED" collation and some miscellaneous user-functions added by the
sqlite3_android.cpp module are not included. A collation called LOCALIZED
that is equivalent to BINARY is added instead to keep various things working.
This should not cause serious problems - class SQLiteConnection always
runs "REINDEX LOCALIZED" immediately after opening a connection.