Since last few days, I have been working with android and I am very excited about it. This is my first blog on Android and many more is to come.
Normally Sqlite database is used with Android application. So this blog is about how you can use existing Sqlite database in Android application. First you need to add following table in your database. I recommend Sqlite Expert Personal tool to make changes or create new Sqlite database. Open the database and run following query
private static String dbPath= “data/data/com.YourPackageName/applicationDb/”;
private static String dbName = “YourDBName”;
private SQLiteDatabase applicationDatabase;
private final Context applicationContext;
public VocabTesterDatabaseHelper(Context context) {
super(context, dbName , null, 3);
this. applicationContext = context;
}
private boolean checkDataBase(){
File dbFile = new File( dbPath + dbName);
return dbFile.exists();
}
private void copyDataBase() throws IOException{
try {
InputStream input = applicationContext .getAssets().open(dbName);
String outPutFileName= dbPath + dbName ;
OutputStream output = new FileOutputStream( outPutFileName);
byte[] buffer = new byte[1024];
int length;
while ((length = input.read(buffer))>0){
output.write(buffer, 0, length);
}
output.flush();
output.close();
input.close();
}
catch (IOException e) {
Log.v(“error”,e.toString());
}
}
public void openDataBase() throws SQLException{
String fullDbPath= dbPath + dbName;
applicationDatabase = SQLiteDatabase.openDatabase( fullDbPath, null,SQLiteDatabase.OPEN_READONLY);
}
@Override
public synchronized void close() {
if( applicationDatabase != null)
applicationDatabase .close();
super.close();
}
@Override
public void onCreate(SQLiteDatabase db) {
}
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
}