Je suis plutôt novice sur Android, et je suis en train de travailler sur une application simple pour obtenir une certaine expérience de base. Mon application est assez simple et se compose entre autres d'un récepteur de radiodiffusion et de certaines activités. Les deux composants, l'utilisation d'une base de données unique, donc, en théorie, il pourrait arriver que les deux essayer d'accéder à la db en même temps.
Actuellement, je suis tout simplement l'instanciation de la db objet (qui est-SQLite db classe helper) à chaque fois que j'en ai besoin, et d'effectuer les opérations nécessaires: requête, insert, etc.
De ce que j'ai lu ici et dans d'autres documents, ce qui a le problème de l'obtention d'un "db verrouillé" exception dans le cas où la base de données est accessible simultanément, donc une meilleure approche serait d'avoir une seule instance de cette db objet afin que tous les composants utilisent la même connexion db à tout moment.
Est le raisonnement ci-dessus est correcte? Serait un singleton alors être une bonne solution pour cela? Je sais que certains puristes peut faire valoir contre elle, mais s'il vous plaît noter que ceci est un peu simple demande si je peux me permettre de faire des choses que je ne serait pas dans d'autres cas.
Sinon, ce serait une meilleure option? J'ai lu sur l'utilisation de fournisseur de contenu, mais il serait trop pour cela, outre que je ne suis pas intéressé pour partager les données avec d'autres activités. J'ai en effet lu ce post et trouvé ça plutôt utile.
Merci à l'avance.