How to use SQLite on Qt Android
Unsolved
Mobile and Embedded
-
I want to use SQLite on Qt Android 5.6, the db file is in the Qt resource and will be copied to write able location on android but it failed when copying db from resource to external path
db = QSqlDatabase::addDatabase( "QSQLITE","MyConnection" ); QString filePath = QStandardPaths::writableLocation(QStandardPaths::AppLocalDataLocation); filePath.append( "/"+dbname); QFile dfile(":/android/assets/"+dbname); if (dfile.exists()) { //dfile.copy("./"+dbname); //QFile::setPermissions("./"+dbname,QFile::WriteOwner | QFile::ReadOwner); if( QFile::exists( filePath ) ) QFile::remove( filePath ); if( dfile.copy( filePath ) ){ QFile::setPermissions( filePath, QFile::WriteOwner | QFile::ReadOwner ); }else{ QMessageBox::information(0,"Info","Error copying "+dfile.fileName()+" to " +filePath); } }else{ QMessageBox::information(0,"Info",dfile.fileName()+" is missing"); } db.setDatabaseName(filePath);
-
You could call dfile.error() to see what the problem was.