有一些事实: 1.我有一个带有sqlcipher加密的数据库。 2.我的数据库是30 MB(它很重) 3.我必须在第一次使用应用程序时将数据库从资产复制到设备。
但是我的问题: 我没有为此操作使用多线程,但这会导致某些设备出错。 所以我怎样才能更好地管理这个: 首先将数据库复制到线程中的设备,然后开始使用数据库。 我用:
Thread thread = new Thread(new Runnable() {
@Override
public void run() {
// COPY OPERATION
}
});
thread.setPriority(Thread.MIN_PRIORITY);
thread.start();
但似乎在结束复制之前读取数据库并导致错误。