Добрый вечер.
Занимаюсь разработкой под Андроид, столкнулся с проблемой.
Проект использует sqlite: рабочие таблицы, таблицы-справочники и представление (view) для отображения готовых данных.
Задача: необходимо обновлять данные в таблице, и динамически отслеживать/отображать изменения в связанном представлении (view). Использую для этого LoaderManager по примеру из
статьи. На чистой таблице всё работает отлично. Но если инициализировать в лоадере вьюху вместо таблицы - лоадер не отслеживает изменения в данных (onLoadFinished не вызывается).
Таблица:CREATE TABLE [table_scan] (
[_id] INTEGER PRIMARY KEY AUTOINCREMENT,
[NR_ID] INTEGER NOT NULL,
[T_ID] INTEGER NOT NULL,
[Color_ID] INTEGER NOT NULL,
[R_ID] INTEGER NOT NULL,
[Barcode] TEXT NOT NULL,
[NumberSeat] INTEGER,
[Date] DATETIME NOT NULL DEFAULT(DATETIME('now', 'localtime')),
[Deleted] INTEGER NOT NULL DEFAULT '0',
[Status] INTEGER NOT NULL DEFAULT '0',
[Export] INTEGER NOT NULL DEFAULT '0');
Вьюха:CREATE VIEW [view_scan] AS SELECT _id, Barcode, Status, Deleted, NumberSeat,
goods_catalog.T_Articul, colors_catalog.Color_Name, sizes_catalog.R_Name
FROM table_scan
INNER JOIN goods_catalog ON goods_catalog.T_ID = table_scan.T_ID
INNER JOIN colors_catalog ON colors_catalog.Color_ID = table_scan.Color_ID
INNER JOIN sizes_catalog ON sizes_catalog.R_ID = table_scan.R_ID
WHERE Deleted = 0;
Как можно решить данную проблему?
ЗЫ: обновлять view, как написано
в документации sqlite, нельзя