Я довольно новичок на Android, и я работаю над простым приложением, чтобы получить некоторый базовый опыт.Мое приложение довольно простое и состоит, среди прочего, из приемника вещания и некоторых действий.Оба компонента используют одну базу данных, поэтому теоретически может случиться так, что оба попытаются одновременно получить доступ к БД.
В настоящее время я просто создаю экземпляр объекта db (который является классом-помощником db SQLite) каждыйраз, когда мне это нужно, и выполнение необходимых операций: запрос, вставка и т. д.
Из того, что я читал здесь и в некоторых других документах, возникает проблема получения исключения "заблокированная БД" вв случае одновременного доступа к БД, поэтому лучше использовать один экземпляр этого объекта БД, чтобы все компоненты всегда использовали одно и то же соединение БД.
Правильно ли приведенные выше рассуждения?Будет ли синглтон достаточно хорошим решением для этого?Я знаю, что некоторые пуристы могут возразить против этого, но, пожалуйста, обратите внимание, что это довольно простое приложение, поэтому я могу позволить себе делать то, чего я бы не делал в других случаях.
В противном случае, какой вариант лучше?Я читал об использовании контент-провайдера, но это было бы слишком для этого, кроме того, что мне не интересно делиться данными с другими действиями.Я действительно прочитал этот пост и нашел его довольно полезным.