我正在为Android制作一个IM客户端,我正在使用数据库存储联系人和其他信息...在我的应用程序中,我有一个活动和一个服务.我需要在服务和活动上同时打开三个数据库.
我使用三个数据库,因为我希望更容易管理数据库,而不会出现写入同步问题.(据我所知,我需要同步在数据库中写入,因为它可能会崩溃).
为了同时从服务和活动管理数据库,我认为DatabaseHelper的单例或静态类可以帮助我......
所以我已经开始通过在活动中创建两个databasehelper全局对象来进行测试,每个对象打开一个不同的数据库,在运行项目之后我注意到最后打开的数据库在两个对象中都保持打开状态:((,为什么这样发生了什么?
有人能吸引我,我怎么能让这项工作成功?谢谢!
LE:经过更多测试后,我创建了一个数据库helper的静态对象,打开一个服务,从中我从活动中获取数据库对象,同时我为两个语句创建了一个,一个在activity中,一个在服务中,从0到3000并将一些值添加到同一个数据库中,然后读取数据库.
在这次运行之后,我注意到数据库仍然处于英尺状态并且运行时没有错误.奇怪的是,只有在完成工作的活动之后,服务才会运行.这是为什么?谢谢!