Biblioteca Qt C ++ en el proyecto Android Eclipse: controlador QSQLITE no cargado

Creé una biblioteca dinámica Qt que usa Qt SQL para abrir una base de datos SQLite, pero recibo este error:

QSqlDatabase: QSQLITE driver not loaded
QSqlDatabase: available drivers: 

La DLL funcionaba bien como parte de una aplicación Qt de Android, sin embargo, necesito usarla a través de JNI desde una aplicación Java existente desarrollada en Eclipse.

Este es el código de ejemplo más corto que reproduce el problema. Cargo la biblioteca de Java y llamo a suinit() método:

System.loadLibrary("plugins_sqldrivers_libqsqlite");
System.loadLibrary("Qt5Sql");
System.loadLibrary("MyQtLib");
MyQtLib.init();

Y dentro de la biblioteca Qt solo llamo QSqlDatabase :: addDatabase ():

JNIEXPORT void JNICALL Java_test_MyQtLib_foo(JNIEnv *, jclass)
{
    // Manually create a QCoreApplication instance.
    int argc = 1;
    static char arg[] = "";
    static char *arg2 = arg;
    app = new QCoreApplication(argc, &arg2);
    // Try to add an SQLite db connection.
    QSqlDatabase::addDatabase("QSQLITE");
}

Ya que el error esQSQLITE driver not loaded, y la biblioteca Qt funcionaba dentro de una aplicación Qt, supongo que Qt está haciendo una inicialización que me falta.

Pero esto no eliminó el error, por lo que debe ser otra cosa. Normalmente, la aplicación Qt usaráQtApplication.java yQtActivity.java para realizar alguna inicialización, por lo que deben estar haciendo algo más allí que yo no estoy haciendo.

Respuestas a la pregunta(1)

Su respuesta a la pregunta