Android - Уведомление наблюдателей об изменениях в запросе / представлении sqlite - PullRequest
2 голосов
/ 27 сентября 2011

Я разрабатываю приложение, в котором мне нужно обновить БД, а затем уведомить заинтересованных наблюдателей, если обновления изменили то, что они наблюдают.Мне кажется, что очевидным способом сделать это было бы определение триггеров, которые вызывают обратный вызов, когда наблюдаемые данные изменились (например, см. http://www.mail-archive.com/sqlite-users@sqlite.org/msg32753.html ).Однако привязки Android SQLite не поддерживают пользовательские функции, что убивает эту идею.Может кто-нибудь предложить другое предложение о том, как я мог бы сделать это?

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

Cheers, Dunk

1 Ответ

0 голосов
/ 21 октября 2011

Дункан, не могли бы вы рассказать нам немного о том, чего вы пытаетесь достичь, делая это?Кажется, что вы программно записываете информацию в базу данных из вашего приложения, а затем вы можете или не хотите также визуально уведомлять пользователя?Если это так, я не уверен, что для управления уведомлением должна быть концепция триггера отдельной базы данных.Если это диссоциированные действия или есть какое-то другое существенное разделение, я думаю, что вы, возможно, захотите взглянуть на написание своего собственного намерения быть запущенным во время записи в базу данных и настройку действия «заинтересованных наблюдателей» для его получения.

Без более надежной поддержки реализации SQLite, я думаю, что лучше всего справиться с этим в вашем приложении.

Документация по Android: http://developer.android.com/guide/topics/intents/intents-filters.html

Пример настраиваемого намерения: http://thinkandroid.wordpress.com/2010/02/02/custom-intents-and-broadcasting-with-receivers/

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