SQLite Android Bindings
Check-in [498ff252ff]
Not logged in

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

Overview
Comment:Add jni/README to explain the origin of the files in that directory.
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA1: 498ff252ff63924d33269ac1a4d59cb7db7a4fe3
User & Date: dan 2013-12-19 16:14:12
Context
2013-12-19
17:58
Copy extra header files from android core into this project. The C++ part now builds with just the NDK - no android source tree required. check-in: d9b8fd9674 user: dan tags: trunk
16:14
Add jni/README to explain the origin of the files in that directory. check-in: 498ff252ff user: dan tags: trunk
09:51
Remove extra logging call. check-in: 2f0852a484 user: dan tags: trunk
Changes
Hide Diffs Unified Diffs Ignore Whitespace Patch

Added jni/README.











































































>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37

All the files in this directory are copied from stock android. The following
files:

JniConstants.cpp
JNIHelp.cpp
ALog-priv.h

are copied in from Android's libnativehelper module (altogether less than 1000
lines of code). The remainder are from the core framework (directory
/frameworks/base/core/jni).

Notes on changes:

The ashmem_XXX() interfaces are used for the various "xxxForBlobDescriptor()"
API functions. The code in libcutils for this seems to be platform
dependent - some platforms have kernel support, others have a user space
implementation. So these functions are not supported for now.

The original SQLiteConnection.cpp uses AndroidRuntime::genJNIEnv() to obtain a
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.