Erro ao copiar BD para o dispositivo
Olá a todos!!
Estou enfrentado o seguinte problema, utilizando o delphi para Android:
Quando o delphi faz o deployment, creio eu que não esta copiando o banco de dados junto, o aplicativo trava no aparelho na hora de conectar o FDConnection.
- Utilizo o Delphi Berlin sem atualização.
- Android SDK 24.3.3 32 bits
- Estou utilizando o android 4.0.1
- BD Sqlite
- Configuração no Deployment já tentei ".\\assets\\internal\\", "\\assets\\internal\\", "assets\\internal\\", ".\\assets\\".
- No FDConnection evento BeforeConected do Componente estou utilizando o seguinte código:
{IFDEF ANDROID}
FDConnection1.Params.Values['Database'] := TPath.Combine(TPath.GetDocumentsPath, 'Dados.db3');
FDConnection1.Params.Values['Database'] := 'C:\\Mobile\\Dados\\Dados.db3';
Alguém poderia me dar uma luz?
Grato
JYCN
Estou enfrentado o seguinte problema, utilizando o delphi para Android:
Quando o delphi faz o deployment, creio eu que não esta copiando o banco de dados junto, o aplicativo trava no aparelho na hora de conectar o FDConnection.
- Utilizo o Delphi Berlin sem atualização.
- Android SDK 24.3.3 32 bits
- Estou utilizando o android 4.0.1
- BD Sqlite
- Configuração no Deployment já tentei ".\\assets\\internal\\", "\\assets\\internal\\", "assets\\internal\\", ".\\assets\\".
- No FDConnection evento BeforeConected do Componente estou utilizando o seguinte código:
{IFDEF ANDROID}
FDConnection1.Params.Values['Database'] := TPath.Combine(TPath.GetDocumentsPath, 'Dados.db3');
FDConnection1.Params.Values['Database'] := 'C:\\Mobile\\Dados\\Dados.db3';
Alguém poderia me dar uma luz?
Grato
JYCN
Jose
Curtidas 0
Respostas
Julio Cesar
21/10/2017
Configuração Deployment : na linha do DB ' .\\assets\\internal\\ ' sem as aspas
isso eu coloquei no DM (DataModule)
procedure TDM.DataModuleCreate(Sender: TObject);
begin
{$IFDEF ANDROID}
FDConnection1.Params.Values['Database'] := TPath.Combine( TPath.GetDocumentsPath,'banco.db3');
{$ENDIF}
{$IFDEF IOS}
FDConnection1.Params.Values['Database'] := GetHomePath + PathDelim + 'Documents' + PathDelim + 'banco.db3';
{$ENDIF}
{$IFDEF MSWINDOWS}
FDConnection1.Params.Values['Database'] := 'F:\\SERVER.REST.SYNC\\MobileREST.SERVER\\BD\\banco.db3';
{$ENDIF}
Try
FDConnection1.Connected;
Except On E : Exception Do
//ShowMessage('Erro de Conexão ao Banco!');
End;
veja se ajuda
end;
isso eu coloquei no DM (DataModule)
procedure TDM.DataModuleCreate(Sender: TObject);
begin
{$IFDEF ANDROID}
FDConnection1.Params.Values['Database'] := TPath.Combine( TPath.GetDocumentsPath,'banco.db3');
{$ENDIF}
{$IFDEF IOS}
FDConnection1.Params.Values['Database'] := GetHomePath + PathDelim + 'Documents' + PathDelim + 'banco.db3';
{$ENDIF}
{$IFDEF MSWINDOWS}
FDConnection1.Params.Values['Database'] := 'F:\\SERVER.REST.SYNC\\MobileREST.SERVER\\BD\\banco.db3';
{$ENDIF}
Try
FDConnection1.Connected;
Except On E : Exception Do
//ShowMessage('Erro de Conexão ao Banco!');
End;
veja se ajuda
end;
GOSTEI 0
Julio Cesar
21/10/2017
não dupla barra, e pq o sistem aqui do forum acressentou mais uma, nao sei pq e uma barra invertida.
(.\\)
(.\\)
GOSTEI 0
Julio Cesar
21/10/2017
.\\assets\\internal\\
GOSTEI 0
Jose
21/10/2017
Obrigado pelas respostas, nenhuma das dicas funcionou, como disse, acho que não está copiando o banco para o dispositivo.
Jycn
Jycn
GOSTEI 0