我是新手,我真的想知道,有没有办法连接到数据库服务器(例如mysql),而不是使用firebase。我正在开发一个智能停车系统项目,我需要将停车区的纬度和经度插入到服务器中创建的数据库中,并在用户请求时检索它。如果有人为上述问题提供解决方案(使用数据库Flutter)会很棒。
答案 0 :(得分:3)
由于Flutter只是一个UI框架,因此持久性和数据库等主题可能超出范围或可能取决于用例。
Flutter UI可以在短时间内持久保存数据(应用程序状态),这种方式实际上只对创建良好的用户体验有用(点击此按钮是绿色吗?等等)
为了在应用程序之外和实际设备上保留更多有用的数据,您可能需要考虑Shared Preferences Plugin for Flutter。
包装NSUserDefaults(在iOS上)和SharedPreferences(在Android上), 为简单数据提供持久存储。数据持续存在 磁盘自动和异步。
现在,如果您需要以任何集中方式保存数据(例如RDMS,Firebase或任何数据持久性服务),您的选项是:
听起来你需要一个中央读/写数据存储,所以你最好的选择是托管一个提供数据库访问权限的服务器,同时向Flutter公开一个API,你可以使用dart:io
来制作请求。
答案 1 :(得分:0)
尝试使用sqflite。您可以在Flutter应用程序中包含该程序包,该程序包使您可以将数据持久保存到本地设备。您还将需要使用path_provider。这是Github https://github.com/tekartik/sqflite
上存储库的链接。答案 2 :(得分:0)
我听说Android和iOS不允许直接访问DBMS。 我们只能使用HTTP / HTTPS或RPC协议。 因此,我们需要一种使用https协议的服务(url),并且该服务可以通过TCP / IP协议连接到DBMS。
我相信Firebase是服务+ dbms,不仅是dbms。 我用graphql-prisma-mysql组合提供服务。太棒了。 然后,我正在尝试Flutter客户端访问该服务....