• Android-Kotlin:离线优先的现场数据收集模块,具有地图、轨迹并同步到现有应用程序中

    2 天 前
    • 所需预算高达 450.83 USD
    • 等待表演者...
  • 初始情况 - 有一个可供现场工程师使用的 Android 应用程序(Kotlin、Android 12+、minSdk 26),具有授权和基本导航功能。目前,访问和检查的数据记录在纸质表格上,然后手动输入系统,这就是坐标、照片和时间丢失的原因。您需要向应用程序添加一个成熟的离线优先模块 - 创建任务、在某个点收集数据、记录轨迹、附加照片和笔记,以及在网络出现时可靠地同步到服务器。

    技术环境 - Android Studio、Kotlin、Jetpack(ViewModel、Room、WorkManager)、Coroutines/Flow、Hilt、Retrofit/OkHttp。可以选择地图 - Mapbox SDK 或 Google Maps SDK,但必须根据以下限制做出决定。服务器已存在且无法更改。 API - REST、JSON、HTTPS、不记名令牌。将提供API文档,但不包括离线脚本。

    您应该得到的是作为当前项目一部分的发布模块,它允许您:
    1)打开任务列表,下载任务到设备并存储在本地
    2)任务内部填写检验单并进行现场验证,草稿保存在本地,无需网络
    3) 记录出发时的GPS轨迹并链接到任务-本地存储并显示在地图上
    4) 每个任务最多拍摄 10 张照片,压缩并保存在本地,显示预览和时间/坐标参考
    5) 通过队列将更改和附件同步到服务器 - 重试、重复数据删除和重新发送时防止重复

    限制 - 该应用程序在连接不良和功率有限的条件下工作,因此后台任务必须小心。除了标准 Jetpack 和选定的 SDK 卡之外,您无法添加大型第三方库。您不能要求在后台进行持续的地理定位 - 轨道录制必须在带有通知的前台服务中正常工作,并且当录制停止时,它不能占用资源。数据应在应用程序重新启动和设备重新启动后继续存在。

    可衡量的验收标准 - 功能必须可在 2 台设备 - Android 10 和 Android 14 上重现:
    - 在没有网络的情况下,您可以创建/编辑 3 个任务,记录至少 2 公里的轨迹并为每个任务拍摄 10 张照片 - 重新启动应用程序后,一切都保持不变
    - 当网络出现时,通过WorkManager启动同步,加载所有更改和照片,发送成功后,本地条目标记为已同步
    - 在发送开始、网络消失、用户重复发送的情况下,重新同步不会在服务器上创建重复项
    - 在普通设备上打开包含 10 张照片的任务屏幕的平均时间不超过 2 秒(Pixel 4a 级别或同等设备)
    - 同步错误显示在人类可读的消息中,并保留在应用程序内至少最近 50 次操作的日志中

    执行阶段 - 分析当前架构和集成点、设计 Room 电路和冲突模型、UI 和存储的实现、跟踪器和地图的实现、同步队列和重盘的实现、测试覆盖关键部分(映射和队列的最小单元测试)、最终组装以及如何运行验收脚本的说明。

    结果是 PR 或 Git 中带有工作模块的一组提交、关于设置映射键和测试脚本的简短自述文件、关于 API 和离线冲突的可接受假设的列表。
您的报价

您尚未提交此订单的报价。
点击“提交报价”发送您的报价。

Need a similar task?

If this project is close to your need, you can view ready services in the category or post your own task with the required budget, deadline and requirements.

The project «Android-Kotlin:离线优先的现场数据收集模块,具有地图、轨迹并同步到现有应用程序中» can be used as a reference for your own brief: what should be done, what result is needed and what budget to set.