2012-04-07 2 views
0

Я разрабатываю приложение для онлайн-экзамена. И я создал базу данных с помощью SQLite Browser и потянул ее в Eclipse. В эмуляторе работает его работа; он способен извлекать и хранить данные. Но проблема возникает, когда я помещаю файл .apk на мобильный. На мобильном устройстве он не может получить существующую базу данных. Я не могу связать файл базы данных вместе с файлом .apk, даже после размещения его в папке с ресурсами.База Android Android

Может ли кто-нибудь помочь?

Детали:

  1. модуль регистрации
  2. модуль Test User (показать на вопросы из базы данных) модуль представления
  3. Score

ответ

0

Как вы запрашивая на базе?

Правильный способ - не размещать отдельный код в коде, а создавать его динамически. Напр. следующий код:

private static class DatabaseHelper extends SQLiteOpenHelper { 
    DatabaseHelper(Context context) { 
     super(context, DATABASE_NAME, null, DB_VERSION); 
    } 

    @Override 
    public void onCreate(SQLiteDatabase db) { 
     db.execSql("/*Put Create Table sqls here*/"); 
     //onCreate will be called only once(when db doesn't exists for application, it creates here with the code) 
    } 

    @Override 
    public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) { 

    } 
} 

Используйте вспомогательный класс базы данных, как это в вашем коде.

Теперь, когда вы хотите, чтобы запрос на вашем дб вы можете сделать это следующим образом:

dbHelper = new DatabaseHelper(ctx); 
    db = dbHelper.getWritableDatabase(); 
    //Start querying on db.(if it is not created oncreate() of dbhelper will create it for you. 

Так просто положить ваш первоначальный дб создать,/операторы вставки в OnCreate() из dbhelper

Смежные вопросы