Форум программистов, компьютерный форум, киберфорум
Наши страницы
Программирование Android
Войти
Регистрация
Восстановить пароль
 
alexmx
0 / 0 / 0
Регистрация: 19.01.2014
Сообщений: 51
#1

Экземпляры классов

07.03.2014, 17:36. Просмотров 383. Ответов 0
Метки нет (Все метки)

Доброго времени суток))
Есть сервис в котором создается экземпляр класса бд
Java
1
2
DBHelper db = new DBHelper(this);
    SQLiteDatabase database;
Используется для вставки данных

Есть класс BaseAdapter в котором то же создается экземпляр класса бд но подругому:
Java
1
2
3
4
5
private void init() {
        dbOpenHelper = new DBHelper(context);
        database = dbOpenHelper.getWritableDatabase();
        cursor = getAllEntries();
    }
Беда в том что в адаптере есть метод который возвращает новый курсор
Java
1
2
3
4
public void refresh() {
        cursor = getAllEntries();
        notifyDataSetChanged();
    }
который я пытаюсь вызвать во время вставки но при создании экземпляра класса BaseAdapter для вызова не статического метода refresh() эклипс выкидывает портянку
Лог:
Кликните здесь для просмотра всего текста
03-06 12:58:34.219: E/AndroidRuntime(1055): FATAL EXCEPTION: main
03-06 12:58:34.219: E/AndroidRuntime(1055): java.lang.RuntimeException: Unable to instantiate service ru.myscanner.scannerth.CatalogService: java.lang.NullPointerException
03-06 12:58:34.219: E/AndroidRuntime(1055): at android.app.ActivityThread.handleCreateService(ActivityThread.java:2347)
03-06 12:58:34.219: E/AndroidRuntime(1055): at android.app.ActivityThread.access$1600(ActivityThread.java:130)
03-06 12:58:34.219: E/AndroidRuntime(1055): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1277)
03-06 12:58:34.219: E/AndroidRuntime(1055): at android.os.Handler.dispatchMessage(Handler.java:99)
03-06 12:58:34.219: E/AndroidRuntime(1055): at android.os.Looper.loop(Looper.java:137)
03-06 12:58:34.219: E/AndroidRuntime(1055): at android.app.ActivityThread.main(ActivityThread.java:4745)
03-06 12:58:34.219: E/AndroidRuntime(1055): at java.lang.reflect.Method.invokeNative(Native Method)
03-06 12:58:34.219: E/AndroidRuntime(1055): at java.lang.reflect.Method.invoke(Method.java:511)
03-06 12:58:34.219: E/AndroidRuntime(1055): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:786)
03-06 12:58:34.219: E/AndroidRuntime(1055): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:553)
03-06 12:58:34.219: E/AndroidRuntime(1055): at dalvik.system.NativeStart.main(Native Method)
03-06 12:58:34.219: E/AndroidRuntime(1055): Caused by: java.lang.NullPointerException
03-06 12:58:34.219: E/AndroidRuntime(1055): at android.content.ContextWrapper.openOrCreateDatabase(ContextWrapper.java:221)
03-06 12:58:34.219: E/AndroidRuntime(1055): at android.database.sqlite.SQLiteOpenHelper.getDatabaseLocked(SQLiteOpenHelper.java:224)
03-06 12:58:34.219: E/AndroidRuntime(1055): at android.database.sqlite.SQLiteOpenHelper.getWritableDatabase(SQLiteOpenHelper.java:164)
03-06 12:58:34.219: E/AndroidRuntime(1055): at ru.myscanner.scannerth.SqlAdapter.init(SqlAdapter.java:37)
03-06 12:58:34.219: E/AndroidRuntime(1055): at ru.myscanner.scannerth.SqlAdapter.<init>(SqlAdapter.java:32)
03-06 12:58:34.219: E/AndroidRuntime(1055): at ru.myscanner.scannerth.CatalogService.<init>(CatalogService.java:16)
03-06 12:58:34.219: E/AndroidRuntime(1055): at java.lang.Class.newInstanceImpl(Native Method)
03-06 12:58:34.219: E/AndroidRuntime(1055): at java.lang.Class.newInstance(Class.java:1319)
03-06 12:58:34.219: E/AndroidRuntime(1055): at android.app.ActivityThread.handleCreateService(ActivityThread.java:2344)
03-06 12:58:34.219: E/AndroidRuntime(1055): ... 10 more
03-06 13:02:23.353: I/Choreographer(4287): Skipped 214 frames! The application may be doing too much work on its main thread.


Как это обмануть?

Добавлено через 21 час 57 минут
Сделал так:
Java
1
SqlAdapter adapter;
и сделал вызов метода класса SqlAdapter:
Java
1
adapter.refresh()
Теперь выкидывает:
Лог
Кликните здесь для просмотра всего текста
03-06 16:03:13.768: E/AndroidRuntime(27801): FATAL EXCEPTION: Timer-0
03-06 16:03:13.768: E/AndroidRuntime(27801): java.lang.NullPointerException
03-06 16:03:13.768: E/AndroidRuntime(27801): at ru.myscanner.scannerth.CatalogService.ScnCatalog(CatalogService.java:65)
03-06 16:03:13.768: E/AndroidRuntime(27801): at ru.myscanner.scannerth.CatalogService$1.run(CatalogService.java:26)
03-06 16:03:13.768: E/AndroidRuntime(27801): at java.util.Timer$TimerImpl.run(Timer.java:284)

Подскажите с чем это может быть связанно?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
07.03.2014, 17:36
Ответы с готовыми решениями:

Сравнение классов
Всем привет! Хочу из массива достать элементы определенного класса, но не совсем получается......

Связи классов
Здравствуйте, такой вопрос, есть модели описанные через структуры для удобства манипуляций с бд...

Диаграмма классов
Всем привет. Появилась необходимость в создании диаграммы классов. Классов много, поэтому в ручную...

Наименование классов (GameView)
интересует, это основной класс во всех приложениях? есть смысл менять название или всегда по...

SharedPreferences для нескольких классов
Задача следующая: один класс отвечает за настройки, конкретно 2 элемента Checkbox &quot;Отображать...

0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
07.03.2014, 17:36

Аналог классов css в xml
Я делаю темы. И дело в том, что например не для всех TextView подходит один и тот же цвет. В CSS...

Создание массива экземпляров разных классов
Здравствуйте! Возникла необходимость создать массив с экземплярами разных классов, так как ~60...

Встают ли AsyncTask разных классов в общую очередь из 5 штук
Если в приложении из Application стартует несколько сингтонов, каждый из которых запускает свои...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru