Cannot load sqlite libraries in Android with Delphi 10.4

  

With Delphi 10.4 I get an error in my Android App (same error for both 32bit and 64bit).

[FireDAC][Phys][SQLite]-314. Cannot load vendor library [libsqlite.so or libdb_sql.so]. Hint: check it is in the PATH or application EXE directories, and has x86 bitness.

It has worked fine in previous versions of Delphi (latest 10.3.3).

Is it at bug, or has something changed with Delphi 10.4?

constructor TBrDataAccess.Create;
var
AppDataName: string;
DBExists: boolean;
begin
try
FFDGUIxProvider := ‘Console’;

AppDataName := TPath.GetDocumentsPath + PathDelim + GetFileName;

DBExists := FileExists(AppDataName);

FConnection:=TFDConnection.Create(nil);
FConnection.Params.Add(‘DriverID=SQLite’);
FConnection.Params.Add(‘Database=’ + AppDataName);
FConnection.Params.Add(‘OpenMode=CreateUTF8’);
FConnection.Params.Add(‘DateTimeFormat=String’);
FConnection.Params.Add(‘LockingMode=Normal’);
FConnection.Params.Add(‘Synchronous=Normal’);
FConnection.Params.Add(‘BusyTimeout=7500’);
FConnection.Params.Add(‘SharedCache=False’);

FConnection.FetchOptions.Mode := fmAll; // Meget vigtig ved SqLite.

FConnection.UpdateOptions.LockWait := True;
FConnection.Connected := true;

if not DBExists
then if FConnection.ExecSQLScalar(‘pragma schema_version;’) = 0
then CreateDb;
except
on E : Exception
do TBrMobileLog.AddLog(TBrLogFileType.LFTDb, ‘TBrDataAccess’, ‘Create’, E.Message, True);
end;
end;

Comments are closed.