Skip to content Skip to sidebar Skip to footer

Sqlite Database Not Copied From Asset Folder Android

I am trying to copy a database named 'adinpect' from the asset folder to the application databases folder, but it is not working... Code (in main activity onCreate(), just for test

Solution 1:

This code wlll help you to copy DB from assets folder. You can check first if DB exists or not.

try{
    // CHECK IS EXISTS OR NOT
    SQLiteDatabase dbe = SQLiteDatabase.openDatabase("/data/data/"+getPackageName+"/databases/dbname.sqlite",null, 0);
    dbe.close();
}
catch(Exception e)}
{
    // COPY IF NOT EXISTS
    AssetManager am = getApplicationContext().getAssets();
    OutputStream os = new FileOutputStream("/data/data/"+getPackageName+"/databases/dbname.sqlite");
    byte[] b = new byte[100];
    int r;
    InputStream is = am.open("dbname.sqlite");
    while ((r = is.read(b)) != -1) {
         os.write(b, 0, r);
   }
   is.close();
   os.close();
}

Post a Comment for "Sqlite Database Not Copied From Asset Folder Android"