Skip to content

修复 Play Store 构建包含 Wear OS 信号导致发布被拒#8

Merged
openlyst merged 3 commits into
mainfrom
fix/playstore-wear-os-track
Jul 15, 2026
Merged

修复 Play Store 构建包含 Wear OS 信号导致发布被拒#8
openlyst merged 3 commits into
mainfrom
fix/playstore-wear-os-track

Conversation

@openlyst

@openlyst openlyst commented Jul 15, 2026

Copy link
Copy Markdown
Owner

GitLab MR: !86

Original: https://gitlab.com/Openlyst/doudou/-/merge_requests/86

概述 Play Store 拒绝了 version code 4089568 的发布,要求 Wear OS 应用使用独立轨道。原因是 phone-playstore 构建中仍包含来自插件的 Wear OS 信号。 ## 根因 通过 bundletool 解析原始 AAB (doudou-21.0.0-2026-07-15-playstore.aab) 发现以下 Wear OS 信号未被移除: - uses-feature: android.hardware.type.watch — 来自 wear_plus 插件 - uses-library: com.google.android.wearable — 来自 play-services-wearable - queries: com.google.android.wearable.app — 来自 watch_connectivity 插件 - DoudouWearableListenerService — 来自 phone manifest 合并 之前的 AndroidManifest-playstore.xml 只移除了 uses-feature,遗漏了其余信号。 ## 修复 在 android/app/src/phone/AndroidManifest-playstore.xml 中添加 tools:node="remove" 显式移除所有 Wear OS 声明: - uses-feature: android.hardware.type.watch - uses-library: com.google.android.wearable - queries: com.google.android.wearable.app / com.samsung.android.app.watchmanager - service: DoudouWearableListenerService 同时在 CI 工作流中为 playstore 目标添加 AAB 构建(Play Store 要求 AAB 格式)。 ## 验证 本地构建 AAB 后用 bundletool 提取 APK 验证,manifest 中所有 Wear OS 信号已完全移除。 GitHub Actions 全平台构建通过 (run 29390900055): - ✓ Build android-phone-playstore (含 AAB) - ✓ Build android-tv-playstore (含 AAB) - ✓ 全部 9 个目标通过 ## Summary by CodeRabbit * New Features * Added Android App Bundle (AAB) outputs for Play Store phone and TV builds. * Included AAB files in nightly and tagged release packages. * Bug Fixes * Improved Play Store phone manifest handling by removing extra Wear OS/Wear-related declarations and services. * Build & Release Improvements * Updated Play Store build detection to work with both Gradle properties and Dart build-time flags, ensuring the correct Play Store-specific resources are used.

HttpAnimations added 2 commits July 14, 2026 21:57
Play Store 要求 Wear OS 应用使用独立轨道发布,但 phone-playstore 构建中
仍包含来自 wear_plus、watch_connectivity 插件和 play-services-wearable 的
Wear OS 信号:
- android.hardware.type.watch (uses-feature)
- com.google.android.wearable (uses-library)
- WearableListenerService
- wearable app queries

在 AndroidManifest-playstore.xml 中添加 tools:node="remove" 显式移除所有
Wear OS 声明,确保 Play Store phone 构建不触发 Wear OS 检测。

同时在 CI 工作流中为 playstore 目标添加 AAB 构建,Play Store 要求 AAB 格式。
AAB 输出在 build/app/outputs/bundle/<flavor>Release/ 而非 flutter-apk/。

@devin-ai-integration devin-ai-integration Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

✅ Devin Review: No Issues Found

Devin Review analyzed this PR and found no bugs or issues to report.

Open in Devin Review

builds 仓库使用 --dart-define=PLAYSTORE=true 但不传 -Pplaystore=true,
导致 Gradle 未切换到 AndroidManifest-playstore.xml,Wear OS 信号未被移除。

解析 dart-defines 属性(base64 编码)检测 PLAYSTORE=true,
与 -Pplaystore=true 任一命中即激活 Play Store 配置。
@openlyst
openlyst merged commit ab30d3c into main Jul 15, 2026
10 of 11 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant