Как я могу хранить базу данных на устройстве Android? - PullRequest
0 голосов
/ 22 декабря 2011

Я создал приложение sqlite, которое содержит таблицы. В этом приложении я получил данные из таблиц. проблема заключается в том, как я могу загрузить это приложение на устройство Android с моей базой данных. Я пытался, но я не нашел ответа. В моем приложении я использовал следующий код.

try{
            String destpath = "/data/data/"+getPackageName()+"/database/mmts1.db";
            File f = new File(destpath);
            if(!f.exists())
            {
                  copyDb(getResources().getAssets().open("mmts1.db"),new FileOutputStream(destpath));
            }
        }
        catch(FileNotFoundException e)
        {
            Log.e("FileNotFoundException",e.getMessage());
        }
        catch(IOException e)
        {
            Log.e("IoException",e.getMessage());
        }

private void copyDb(InputStream open, FileOutputStream fileOutputStream) throws IOException{
            // TODO Auto-generated method stub
            byte [] buffer = new byte[1024];
            int length;
            while((length=open.read(buffer))>0)
            {
                  fileOutputStream.write(buffer,0,length);
            }
            open.close();
            fileOutputStream.close();

      }

1 Ответ

1 голос
/ 22 декабря 2011

Используйте SQLiteAssetHelper для упаковки базы данных с вашим приложением.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...