首页 > 解决方案 > Delphi SqLite,firedac,卡在带有火图标的黑色加载屏幕

问题描述

我正在开发一个使用 sqlite 的简单 android 应用程序。我有一个简单的多设备应用程序。有一个列表视图连接到 fdquery1 和 fdconnection1。当我编译到我的安卓手机时,我得到带有火图标的黑屏。如果我打开 fdconnection1,那么应用程序将编译(Listview 中没有数据显示)。有没有人遇到过这个?我正在使用德尔福社区版。谢谢你的帮助。这是我的sorcecode的链接

我拥有的唯一代码是用于 android 的。

procedure TForm4.FDConnection1BeforeConnect(Sender: TObject);
begin
   {$IF DEFINED(iOS) or DEFINED(ANDROID)}
    FDConnection1.Params.Values['Database'] :=
    TPath.Combine(TPath.GetDocumentsPath, 'flatrate.db3');
    {$ENDIF}
end;

我断开了 fdconnection1 并将其连接到 show 事件的表单上。该应用程序现在将编译为 android,但我无法执行 query1 sql 以在列表视图中显示数据。

procedure TForm4.Button1Click(Sender: TObject);
  begin
    FDQuery1.SQL.Text := 'select * from main';
    fdquery1.ExecSQL;
    FDQuery1.Open;
  end;

当我单击我的 android 手机上的按钮时,我收到消息“错误没有这样的表主”

标签: sqlitedelphifiredac

解决方案


好吧,我不确定 android 手机如何处理现金,但似乎如果我完全卸载应用程序然后运行我的应用程序,它就可以工作。

procedure TForm4.FormShow(Sender: TObject);
 begin
   FDConnection1.Connected:= True;
   FDQuery1.Active:=True;

 end;

我希望这可以帮助别人 :)


推荐阅读