Skip to content

Cooperiano/cyclingplus_distribution

Repository files navigation

CyclingPlus

一款专注于骑行数据分析的 Android 应用,提供 Strava 数据集成和本地文件导入分析功能。

核心功能

🚴 Strava 集成

  • OAuth 授权与账号管理
  • 活动数据自动同步(支持后台定时同步)
  • 活动列表浏览与详情查看
  • 流数据可视化(功率、心率、踏频、速度、海拔)
  • eFTP 估算

📊 本地数据分析

  • 支持 GPX/TCX 文件导入
  • 功率分析:eFTP、CP/W′、NP/IF/TSS、VI/EF、功率区间、MMP、W′ 平衡
  • 心率分析:心率区间分布、hrTSS
  • 基础指标:距离、爬升、速度、踏频、VO₂max 估算
  • 训练恢复建议

技术栈

  • 最低支持版本:Android 9 (API 28)
  • 推荐版本:Android 14+
  • 架构:单 Activity + 多 Fragment,MVVM 模式
  • 核心库:Jetpack (Navigation, Room, Paging 3, WorkManager), Hilt, Retrofit, MPAndroidChart

Strava 授权配置说明

最低支持 Android 9(API 28),推荐在 Android 14 及以上体验完整功能。

由于 Google 的 “Use secure browsers” 策略禁止在 WebView 中执行 Google 登录,本应用现在使用 Chrome Custom Tabs / 系统浏览器完成 Strava OAuth。默认回调改为应用自定义 Scheme cyclingplus://cyclingplus,避免出现 Error 403: disallowed_useragent。使用步骤如下:

  1. 在 Strava 开发者后台的 OAuth Redirect URI 中填写与应用一致的自定义回调,例如 cyclingplus://cyclingplus,并在同一页面的 Authorization Callback Domain 字段填入 cyclingplus(两者的 scheme/host 必须完全一致)。
  2. (可选)若你有自己的 HTTPS 域名并希望继续通过网页回调,请在同一设置页中配置该 HTTPS 地址,并在本应用的设置对话框中同步填写 Web Redirect URI;同时请在该域名上完成 Android App Links 验证,使应用能够捕获 HTTPS 回调。
  3. 打开应用 →「账号」→「连接 Strava」,首次会弹出客户端配置对话框:
    • Client ID / Client Secret:来自 Strava 开发者后台。
    • Web Redirect URI:如果没有自有域名可以留空(默认使用应用 Scheme 回调)。
    • App Callback URI:保持默认 cyclingplus://cyclingplus,除非你自定义了其他 Scheme/Host 并在 Strava 后台同步更新。
  4. 保存后应用会自动打开安全浏览器完成授权;成功后会自动跳回应用并显示「Strava 授权成功」。

如需重新尝试或改用系统浏览器,可在授权等待页点击「重新打开授权页面」或「使用系统浏览器」。

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages