[skill-runner] Skill runner report: update-androidsdk-packages

未关闭
#13,370 0 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看

维护者通常 1 天内回复

还没有人认领这个 Issue。

评估

难度
4/5
预计耗时
1-2 天
新手友好度
18/100
Issue 类型
缺陷
描述清晰度
基本清楚
活跃度
活跃
技术栈
android, csharp

调研方向

The failing check is the Gradle assembleDebug run of a temporary Android library, which errors on conflicting ANDROID_HOME and ANDROID_SDK_ROOT values. The validation path involves src/androidsdk/androidsdk.csproj and _ValidateAndroidSdkLicenses, with the SDK catalog in _PlatformPackage. Done means the SDK environment is consistent, the Gradle check passes, and the skill is rerun and validated.

由索引模型根据 Issue 内容生成。

描述

automated needs-triage skill-runner

Skill run: update-androidsdk-packages

Run outcome: Failed — the required Gradle compatibility check encountered conflicting Android SDK environment variables. No commit or PR was created. Candidate catalog edits remain uncommitted in the workflow checkout.

Platform catalog check: No newer stable platform level exists upstream beyond 37.2, the highest API level already in _PlatformPackage. Platform 37.2 has a newer revision (r02); that is an existing-platform refresh, not a new API level.

Candidate changes
  • Emulator 37.2.12 → 37.2.13, archive build 16428233 → 16740729; SHA-256 hashes computed with the bundled helper for Linux x64, Windows x64, macOS x64, and macOS arm64, validating each download against the manifest SHA-1 and size. The higher emulator 37.3.6 is on channel-2 and was not selected; 37.2.13 is on channel-0.
  • Platform 37.2 r01 → r02; SHA-256 computed with the bundled helper and manifest verification.
  • Other catalog families match the published pins. Command-line tools remain at 23.0 / 16111833_latest; no new macOS-arm64 archive variant was added.
  • NDK pins and package entries were left unchanged. Platform API set/count (27 entries), distinct sources for every shipped stable platform, and archive/hash-specific extraction outputs were preserved.
Validation

Passed:

TMPDIR=/tmp/gh-aw/agent/ dotnet build build-tools/Xamarin.Android.Tools.BootstrapTasks/Xamarin.Android.Tools.BootstrapTasks.csproj -v:minimal
TMPDIR=/tmp/gh-aw/agent/ dotnet restore src/androidsdk/androidsdk.csproj
TMPDIR=/tmp/gh-aw/agent/ dotnet build src/androidsdk/androidsdk.csproj --no-restore -v:minimal -p:AndroidToolchainDirectory=/tmp/gh-aw/agent/android-toolchain -p:AndroidToolchainCacheDirectory=/tmp/gh-aw/agent/android-archives -p:AndroidSdkDirectory=/tmp/gh-aw/agent/android-toolchain/sdk -p:AndroidNdkDirectory=/tmp/gh-aw/agent/android-toolchain/ndk

The prerequisite build and full current-host SDK build completed with zero warnings and zero errors. XML parsing, git diff --check, and catalog invariants passed.

Production _ValidateAndroidSdkLicenses checks also passed: absent license/marker creates the pinned fingerprint and marker; a pre-existing unrelated valid fingerprint is preserved; malformed content is rejected without modifying the license file or creating the marker. Source inspection confirms cross-process locking and atomic replacement, with no Android CLI invoked for acceptance.

Failed:

TMPDIR=/tmp/gh-aw/agent/ JAVA_HOME=/tmp/gh-aw/agent/android-toolchain/jdk-25 ANDROID_HOME=/tmp/gh-aw/agent/android-toolchain/sdk GRADLE_USER_HOME=/tmp/gh-aw/agent/gradle-user-home build-tools/gradle/gradlew --no-daemon --console=plain -p /tmp/gh-aw/agent/sdk-license-check assembleDebug

The temporary Android library used Android Gradle Plugin 9.5.0, Build Tools 37.0.0, and platform android-37.2. Gradle exited with:

Could not determine the dependencies of task ':extractDebugAnnotations'.
Several environment variables and/or system properties contain different paths to the SDK.
Please correct and use only one way to inject the SDK location.
It is recommended to use ANDROID_HOME as other methods are deprecated.

ANDROID_HOME selected the task-local SDK while inherited ANDROID_SDK_ROOT selected a different SDK. Gradle recognition of the Build Tools/platform licenses therefore remains unverified. Per the workflow instructions, execution stopped rather than committing or opening a PR after failed validation.

Follow-up

Ensure the validation process has a single consistent SDK location (prefer ANDROID_HOME; remove the conflicting deprecated ANDROID_SDK_ROOT setting), then rerun the skill and all required validation. Task-created SDK, archive, Gradle, and compatibility-project artifacts were removed.

The mandatory open-PR check completed using REST pages 1 and 2 (38 PRs, then an empty page); no exact-title [skill-runner] update-androidsdk-packages match was found.

Workflow run: https://github.com/dotnet/android/actions/runs/41382761920

Generated by Skill Runner · copilot · gpt61 · 44.6 AIC · ⌖ 9.61 AIC · ⊞ 23.5K · ◷

  • expires on Dec 2, 2026, 3:32 AM UTC
主要语言
C#
星标
2.1k
派生
579
平均合并
1 天 17 小时
30 天内合并 PR
256

环境准备

  • 没有 Dockerfile 或 Docker Compose 文件
  • 有 Pull Request 模板
  • 没有贡献指南

从这里开始

  1. 先读完整个 Issue,再读项目的贡献指南。
  2. 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
  3. Fork 仓库,在一个分支上完成修改。
  4. 提交 Pull Request,并在描述里引用这个 Issue 编号。

dotnet/android 的其他 Issue

查看 dotnet/android 的全部 Issue

相似的 Issue

更多 C# Issue

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。