如何设计系统以在移动应用程序和 Web 上共享相同的内容?

Vik*_*ari 1 project-management software-design firebase reactjs flutter

我正在为 iOS、Android 和 Web 开发 LMS。移动应用程序是使用 Flutter 开发的,Web 是基于 React 的,我决定使用 Firebase 作为后端和存储。包含的功能就像一般的LMS,列表

  • 用户认证
  • 动态密码发送
  • 视频/图像/文件访问
  • 进度跟踪等

我想知道如何加快这种发展?如何在此开发中使用 REST API?如何在两个平台上共享相同的内容、用户数据?你还有什么建议吗?

您的建议对农村孩子的学习很有帮助。

Kev*_*yat 5

为了加快开发速度,并且既然您已经询问如何在移动和网络上共享类似的内容,

您可能对将移动技术堆栈从 Flutter 转移到 React Native 感兴趣,因为这样您就可以共享 React Web 和 React Native 移动代码库的逻辑方面。由于 React Native 使用的是移动组件,因此视图可能会有所不同。

您可能会考虑使用相同的设计组件(如 Material UI 或 Bootstrap)在 Web 和移动设备中构建类似的外观和感觉。如果需要定制,定制也应该是一样的。只是一点点差异是可以容忍的。

要使用的预制组件的一些示例。

  • 用户认证
  • OTP 发送视频/图像/文件访问
  • 进度跟踪等

可以使用服务提供商来完成。Firebase 已经具有用户身份验证。可以在 Google 中研究 OTP 发送以获得最佳提供商。

对于视频/图像/文件,Firebase 也有存储服务。还提供进度跟踪和分析。

为了方便起见,您可能需要考虑使用 firebase 团队提供的 SDK,而不是使用纯 REST API 来进行数据获取/发送。

https://firebase.google.com/docs/firestore/client/libraries

如果您认为同时维护移动和 Web 代码库很麻烦,您可以考虑将纯 Web 切换到像 PWA 这样的移动优先响应式 Web 应用程序。如果你不关心性能,用 Cordova 或 Ionic Web 视图来封装 React Web 是另一个可行的选择。