动机

soTired 是一款用于认知疲劳评估的应用。它包括一个用于疲劳检测的独立 Android 应用,以及用于数据管理和进一步分析的附加部分。该项目结构为客户端(独立应用)
采用 Dart/Flutter 实现,服务器端(数据管理)则使用 Golang 编写。
除了 Android,Dart/Flutter 还提供了从单一代码库添加 iOS、桌面和/或 Web 应用的能力。

soTired 是在
Edward Price、George Moore、Leo Galway 和 Mark Linden 的论文《智能手机作为基础的现场认知疲劳评估方法验证》中提出的应用的重写版本。
论文由 Edward Price、George Moore、Leo Galway 和 Mark Linden 撰写。

如何贡献

非常欢迎提交 PR! :)
您可以按照以下步骤设置您的开发环境。

应用开发环境设置

  1. 确保您已安装 flutter(版本 2.5.0 或更高版本),并且 flutter doctor -v 在 Android 开发方面没有显示任何
    错误。
  2. 克隆存储库并在终端运行 cd soTired/ && make init 来初始化 git 提交前钩子。
  3. soTired/ 目录中运行 make flutterPubGet 来安装所有依赖的包。

服务器开发环境设置

  1. 确保您已安装 go(版本 1.17 或更高版本)。
  2. 克隆存储库并在终端运行 cd soTired/ && make init 来初始化 git 提交前钩子。
  3. soTired/server/ 目录中运行 go install 来安装所有必需项。

现在您可以开始使用了 :)
注意:请查看 Makefile 以获取有关应用程序和服务器部分的有用命令。

如何安装应用程序

  1. 确保您已安装 adb(或类似的安装应用程序的工具)。(支持的最低 Android
    版本为 9.0 (API level 28)。)
  2. 下载官方版本(在此)或通过在项目根目录运行 make flutterBuild 来自行构建。
    请注意,您需要先设置好您的开发环境。
    您需要先设置好您的开发环境。

如何设置服务器

  1. 设置好服务器开发环境后,运行 cd soTired && make gobuild 来构建服务器。
    然后,通过键入 cd server && ./soti-server,您将看到服务器帮助信息。请按照这些
  2. 说明来启动服务器。
    要启动服务器,请遵循这些说明。

贡献

如需通过代码进行通信,请使用以下标签之一

FIXME - for a bug which can't be fixed now
TODO - for a feature or are a design change that has to be done later on
NOTE - for an important information

此存储库的 git 工作流程是 **rebase-merge**,这会产生以下形式的历史记录:

                             F--G
                            /    \
   feature-1 ->     B--C   E------H    <- feature-2
                   /    \ /        \
                --A------D----------I  <-main

总而言之,主分支仅包含来自其他分支的合并提交,
这些分支会 rebase 到最新的提交上。

文档

有关更多信息,请参阅该应用的 报告

GitHub

https://github.com/teamulster2/soTired