8000 got database creation and insert working · boxer/android-database-sqlcipher@7ef4de8 · GitHub
[go: up one dir, main page]

Skip to content

Commit 7ef4de8

Browse files
committed
got database creation and insert working
1 parent e6e6c52 commit 7ef4de8

10 files changed

+88
-41
lines changed

src/example/SQLDemoActivity.java

Lines changed: 27 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
package example;
22

3-
import info.guardianproject.database.Cursor;
3+
import android.database.Cursor;
44
import info.guardianproject.database.sqlcipher.SQLiteDatabase;
55
import android.app.Activity;
66
import android.content.ContentValues;
@@ -10,29 +10,40 @@
1010
public class SQLDemoActivity extends Activity {
1111
EventDataSQLHelper eventsData;
1212

13+
/*
14+
0x00000001 (NEEDED) Shared library: [libstlport_shared.so]
15+
0x00000001 (NEEDED) Shared library: [libc.so]
16+
0x00000001 (NEEDED) Shared library: [libstdc++.so]
17+
0x00000001 (NEEDED) Shared library: [libm.so]
18+
0x00000001 (NEEDED) Shared library: [libsqlcipher.so]
19+
0x00000001 (NEEDED) Shared library: [liblog.so]
20+
0x00000001 (NEEDED) Shared library: [libdl.s
21+
*/
22+
23+
1324
@Override
1425
public void onCreate(Bundle savedInstanceState) {
1526
super.onCreate(savedInstanceState);
1627

17-
System.loadLibrary("nativehelper");
18-
System.loadLibrary("android_runtime");
19-
20-
System.loadLibrary("crypto");
21-
System.loadLibrary("ssl");
28+
// System.loadLibrary("nativehelper");
29+
// System.loadLibrary("android_runtime");
2230

31+
// System.loadLibrary("crypto");
32+
// System.loadLibrary("ssl");
2333

34+
/*
2435
System.loadLibrary("icudata");
2536
System.loadLibrary("icui18n");
26-
System.loadLibrary("icuuc");
27-
28-
System.loadLibrary("stlport_shared");
29-
30-
System.loadLibrary("sqlcipher");
31-
32-
System.loadLibrary("sqlcipher_android");
33-
System.loadLibrary("database_sqlcipher");
34-
35-
37+
System.loadLibrary("icuuc");
38+
*/
39+
40+
41+
/*
42+
System.loadLibrary("lib/libstlport_shared.so");
43+
System.loadLibrary("lib/libsqlcipher.so");
44+
System.loadLibrary("lib/libdatabase_sqlcipher.so");
45+
System.loadLibrary("lib/libsqlcipher_android.so");
46+
*/
3647

3748
eventsData = new EventDataSQLHelper(this);
3849
addEvent("Hello Android Event");

src/info/guardianproject/database/CursorWindow.java

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@
2525
/**
2626
* A buffer containing multiple cursor rows.
2727
*/
28-
public class CursorWindow extends SQLiteClosable implements Parcelable {
28+
public class CursorWindow extends android.database.CursorWindow implements Parcelable {
2929
/** The pointer to the native window class */
3030
@SuppressWarnings("unused")
3131
private int nWindow;
@@ -38,6 +38,7 @@ public class CursorWindow extends SQLiteClosable implements Parcelable {
3838
* @param localWindow true if this window will be used in this process only
3939
*/
4040
public CursorWindow(boolean localWindow) {
41+
super(localWindow);
4142
mStartPos = 0;
4243
native_init(localWindow);
4344
}
@@ -491,7 +492,7 @@ protected void finalize() {
491492
public static final Parcelable.Creator<CursorWindow> CREATOR
492493
= new Parcelable.Creator<CursorWindow>() {
493494
public CursorWindow createFromParcel(Parcel source) {
494-
return new CursorWindow(source);
495+
return new CursorWindow(source,0);
495496
}
496497

497498
public CursorWindow[] newArray(int size) {
@@ -512,7 +513,10 @@ public void writeToParcel(Parcel dest, int flags) {
512513
dest.writeInt(mStartPos);
513514
}
514515

515-
private CursorWindow(Parcel source) {
516+
public CursorWindow(Parcel source,int foo) {
517+
518+
super(true);
519+
516520
IBinder nativeBinder = source.readStrongBinder();
517521
mStartPos = source.readInt();
518522

src/info/guardianproject/database/DatabaseUtils.java

Lines changed: 18 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -16,24 +16,33 @@
1616

1717
package info.guardianproject.database;
1818

19+
import android.database.Cursor;
20+
21+
import info.guardianproject.database.sqlcipher.SQLiteAbortException;
22+
import info.guardianproject.database.sqlcipher.SQLiteConstraintException;
23+
import info.guardianproject.database.sqlcipher.SQLiteDatabase;
24+
import info.guardianproject.database.sqlcipher.SQLiteDatabaseCorruptException;
25+
import info.guardianproject.database.sqlcipher.SQLiteDiskIOException;
26+
import info.guardianproject.database.sqlcipher.SQLiteException;
27+
import info.guardianproject.database.sqlcipher.SQLiteFullException;
28+
import info.guardianproject.database.sqlcipher.SQLiteProgram;
29+
import info.guardianproject.database.sqlcipher.SQLiteStatement;
30+
31+
import java.io.FileNotFoundException;
32+
import java.io.PrintStream;
33+
import java.text.Collator;
34+
import java.util.HashMap;
35+
import java.util.Map;
36+
1937
import org.apache.commons.codec.binary.Hex;
2038

2139
import android.content.ContentValues;
22-
import android.content.Context;
2340
import android.content.OperationApplicationException;
24-
25-
import info.guardianproject.database.sqlcipher.*;
2641
import android.os.Parcel;
2742
import android.text.TextUtils;
2843
import android.util.Config;
2944
import android.util.Log;
3045

31-
import java.io.FileNotFoundException;
32-
import java.io.PrintStream;
33-
import java.text.Collator;
34-
import java.util.HashMap;
35-
import java.util.Map;
36-
3746
/**
3847
* Static utility methods for dealing with databases and {@link Cursor}s.
3948
*/

src/info/guardianproject/database/sqlcipher/SQLiteContentHelper.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,8 @@
2020
import android.content.res.AssetFileDescriptor;
2121
import android.os.MemoryFile;
2222

23+
import android.database.Cursor;
24+
2325
import java.io.FileNotFoundException;
2426
import java.io.IOException;
2527

src/info/guardianproject/database/sqlcipher/SQLiteCursor.java

Lines changed: 9 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,15 @@
1616

1717
package info.guardianproject.database.sqlcipher;
1818

19-
import info.guardianproject.database.*;
19+
import info.guardianproject.database.AbstractWindowedCursor;
20+
import info.guardianproject.database.CursorWindow;
21+
import info.guardianproject.database.DataSetObserver;
22+
import info.guardianproject.database.SQLException;
23+
24+
import java.util.HashMap;
25+
import java.util.Iterator;
26+
import java.util.Map;
27+
import java.util.concurrent.locks.ReentrantLock;
2028

2129
import android.database.CharArrayBuffer;
2230
import android.database.ContentObserver;
@@ -27,11 +35,6 @@
2735
import android.util.Config;
2836
import android.util.Log;
2937

30-
import java.util.HashMap;
31-
import java.util.Iterator;
32-
import java.util.Map;
33-
import java.util.concurrent.locks.ReentrantLock;
34-
3538
/**
3639
* A Cursor implementation that exposes results from a query on a
3740
* {@link SQLiteDatabase}.

src/info/guardianproject/database/sqlcipher/SQLiteCursorDriver.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ public interface SQLiteCursorDriver {
3131
* null if standard SQLiteCursors should be returned.
3232
* @return a Cursor over the result set
3333
*/
34-
Cursor query(CursorFactory factory, String[] bindArgs);
34+
android.database.Cursor query(CursorFactory factory, String[] bindArgs);
3535

3636
/**
3737
* Called by a SQLiteCursor when it is released.

src/info/guardianproject/database/sqlcipher/SQLiteDatabase.java

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@
1616

1717
package info.guardianproject.database.sqlcipher;
1818

19-
import info.guardianproject.database.Cursor;
19+
import android.database.Cursor;
2020
import info.guardianproject.database.DatabaseUtils;
2121
import info.guardianproject.database.SQLException;
2222
import info.guardianproject.database.sqlcipher.SQLiteDebug.DbStats;
@@ -67,6 +67,14 @@ public class SQLiteDatabase extends SQLiteClosable {
6767
private static final int EVENT_DB_OPERATION = 52000;
6868
private static final int EVENT_DB_CORRUPT = 75004;
6969

70+
static
71+
{
72+
System.loadLibrary("stlport_shared");
73+
System.loadLibrary("sqlcipher");
74+
System.loadLibrary("sqlcipher_android");
75+
System.loadLibrary("database_sqlcipher");
76+
}
77+
7078
/**
7179
* Algorithms used in ON CONFLICT clause
7280
* http://www.sqlite.org/lang_conflict.html
@@ -1818,6 +1826,7 @@ public SQLiteDatabase(String path, CursorFactory factory, int flags) {
18181826
mStackTrace = new DatabaseObjectNotClosedException().fillInStackTrace();
18191827
mFactory = factory;
18201828
dbopen(mPath, mFlags);
1829+
18211830
if (SQLiteDebug.DEBUG_SQL_CACHE) {
18221831
mTimeOpened = getTime();
18231832
}

src/info/guardianproject/database/sqlcipher/SQLiteDirectCursorDriver.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@
2727
public class SQLiteDirectCursorDriver implements SQLiteCursorDriver {
2828
private String mEditTable;
2929
private SQLiteDatabase mDatabase;
30-
private Cursor mCursor;
30+
private android.database.Cursor mCursor;
3131
private String mSql;
3232
private SQLiteQuery mQuery;
3333

@@ -37,7 +37,7 @@ public SQLiteDirectCursorDriver(SQLiteDatabase db, String sql, String editTable)
3737
mSql = sql;
3838
}
3939

40-
public Cursor query(CursorFactory factory, String[] selectionArgs) {
40+
public android.database.Cursor query(CursorFactory factory, String[] selectionArgs) {
4141
// Compile the query
4242
SQLiteQuery query = new SQLiteQuery(mDatabase, mSql, 0, selectionArgs);
4343

src/info/guardianproject/database/sqlcipher/SQLiteOpenHelper.java

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,8 @@
1616

1717
package info.guardianproject.database.sqlcipher;
1818

19+
import java.io.File;
20+
1921
import android.content.Context;
2022
import info.guardianproject.database.sqlcipher.SQLiteDatabase.CursorFactory;
2123
import android.util.Log;
@@ -97,7 +99,14 @@ public synchronized SQLiteDatabase getWritableDatabase() {
9799

98100
} else {
99101
String path = mContext.getDatabasePath(mName).getPath();
100-
db = SQLiteDatabase.openDatabase(path, mFactory, SQLiteDatabase.OPEN_READWRITE);
102+
103+
File dbPathFile = new File (path);
104+
if (!dbPathFile.exists())
105+
dbPathFile.getParentFile().mkdirs();
106+
107+
db = SQLiteDatabase.openOrCreateDatabase(path, mFactory);
108+
109+
// db = SQLiteDatabase.openDatabase(path,mFactory , SQLiteDatabase.OPEN_READWRITE);
101110

102111
//db = mContext.openOrCreateDatabase(mName, 0, mFactory);
103112

src/info/guardianproject/database/sqlcipher/SQLiteQueryBuilder.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -273,7 +273,7 @@ public static void appendColumns(StringBuilder s, String[] columns) {
273273
* @see android.content.ContentResolver#query(android.net.Uri, String[],
274274
* String, String[], String)
275275
*/
276-
public Cursor query(SQLiteDatabase db, String[] projectionIn,
276+
public android.database.Cursor query(SQLiteDatabase db, String[] projectionIn,
277277
String selection, String[] selectionArgs, String groupBy,
278278
String having, String sortOrder) {
279279
return query(db, projectionIn, selection, selectionArgs, groupBy, having, sortOrder,
@@ -312,7 +312,7 @@ public Cursor query(SQLiteDatabase db, String[] projectionIn,
312312
* @see android.content.ContentResolver#query(android.net.Uri, String[],
313313
* String, String[], String)
314314
*/
315-
public Cursor query(SQLiteDatabase db, String[] projectionIn,
315+
public android.database.Cursor query(SQLiteDatabase db, String[] projectionIn,
316316
String selection, String[] selectionArgs, String groupBy,
317317
String having, String sortOrder, String limit) {
318318
if (mTables == null) {

0 commit comments

Comments
 (0)
0