我创建了应用和服务。 这两个应用程序使用已放置在SDCard上的单个DB。 我的服务会查找新数据并将其推送到服务器每30秒。同时用户使用我的应用程序在db中输入一些数据/记录。 它的工作正常,如果网络很好但是如果网络出现故障我的应用程序无法将记录插入到db,因为Service正在等待来自Server的响应。 我使用Singleton类来纠正我的错误,即使我面临同样的问题。怎么克服这个?需要帮助伙伴
答案 0 :(得分:1)
您基本上是说一个线程无法将数据存储到SD卡中,因为另一个线程正在忙于与某个远程Web服务器通信。为什么呢?
似乎来自网络访问线程的某些同步锁定不必要地广泛,您在不需要时锁定数据库。将网络访问代码移到您锁定数据库的同步语句或方法之外,尝试尽快开始和完成数据库,而不需要其他活动。
答案 1 :(得分:0)
对于糟糕的互联网连接,你无能为力。 对您的http请求设置超时限制并稍后重试(或监听连接更改)。
下次,请尝试将问题标题与您的问题相关联。目前,它与彼此无关。您没有使用2个应用程序,问题不在于使用来自2个应用程序的数据库。