I wasn't talking about the db at your terminals, but at your server (which I mistakenly thought it was an android device too). Now, here's a suggestion, if of course you haven't tried that already: Upload, as you ordinary do, your db to your ftp, then download to another pc and try to access it. The error you describe, should be there again. If everything runs smoothly, then we certainly have to deal with the devices. If that's the case, the first thing I would recommend, is immediately closing the app after successfully copying the new db, and even recommend the user to restart the device.
About cursors, now. I always check if they are open, I use the hard way of ctrl-f in order to search every single one of them. It's not only for locking issues but also for performance related ones.