Communityコーディング&開発github.com

lerchenflo/claudeskills

AndroidプロジェクトをAndroid Gradle Plugin(AGP)バージョン9にアップグレードまたは移行します。Kotlin Multiplatform(KMP)プロジェクトには使用しないでください。

claudeskills とは?

このスキルは、AndroidプロジェクトをAndroid Gradle Plugin(AGP)9に移行・アップグレードするための包括的なガイドを提供します。AGP 8から9への主要な変更点(多くは破壊的変更)を網羅した移行ガイドを参照し、依存関係の更新、組み込みKotlinへの移行、新しいAGP DSLへの対応、kaptからKSPまたはlegacy-kaptへの移行、BuildConfigの調整、gradle.propertiesのクリーンアップなど、段階的な手順を実行します。AGP 9未満のプロジェクトでは、Android StudioのAGPアップグレードアシスタントの使用を推奨し、スキップも可能です。Kotlin Multiplatform(KMP)プロジェクトはサポート対象外です。検証手順として、Gradle IDE同期、./gradlew help、./gradlew build --dry-runの成功を確認します。また、Paparazzi v2.0.0-alpha04以下のバージョンはAGP 9と互換性がないため、注意が必要です。

対応✓Claude Code~Codex CLI~Cursor
npx skills add https://github.com/lerchenflo/claudeskills/tree/HEAD/android/agp-9-upgrade

Installed? Explore more コーディング&開発 skills: steipete/bluebubbles, steipete/eightctl, steipete/blucli · View all 6 →

お気に入りのAIに質問する

このエージェントスキルを事前に読み込んだ状態で新しいチャットを開きます。

ドキュメント

移行ガイド

AGP 9におけるAGP 8からの主要な変更点(多くは破壊的変更)については、AGP 9移行ガイドを参照してください。

要件

ユーザーがAGP 9への更新または移行を依頼した場合、まずプロジェクトで使用されているAGPバージョンを確認してください。バージョンが9より低い場合は、処理を中断し、ユーザーにAndroid StudioのAGPアップグレードアシスタントを実行してAGPの最新安定版に更新し、完了したら確認するよう依頼してください。ユーザーがこの要件をスキップするよう要求する場合もあります。その場合は、AGP 9移行の一環としてAGPのバージョンを最新安定版に更新する必要があります。その方法については、AGP 9移行ガイドを参照してください。

AGPの各バージョンには、Gradle、JDK、Kotlinなどの他のツールとの互換性があります。各バージョンのリリースノートには、これらのツールの最小バージョンを示す互換性テーブルが含まれています。

このスキルはKMPプロジェクトには使用しないでください。サポートされていません。

手順

AGPがすでに9以上である場合は、次の手順を実行します。

手順1: 依存関係の更新

プロジェクトでKSP(com.google.devtools.ksp)を使用している場合は、バージョン2.3.6以上であることを確認してください。

プロジェクトでHiltを使用している場合は、バージョン2.59.2以上であることを確認してください。

手順2: 組み込みKotlinへの移行

詳細はガイドを参照してください。

手順3: 新しいAGP DSLへの移行

詳細はガイドを参照してください。

AGP 9および新しいDSLと互換性のあるコードへの移行例については、gradle-recipesも参照してください。

手順4: kaptからKSPまたはlegacy-kaptへの移行

プロジェクトでKSP(com.google.devtools.ksp)またはkapt(org.jetbrains.kotlin.kapt)を使用している場合は、詳細な移行手順についてKSP、kapt、およびlegacy-kaptを参照してください。

手順5: BuildConfig

いずれかのAndroidモジュールにカスタムのBuildConfigフィールドが含まれている場合は、詳細についてBuildConfigを参照してください。

手順6: gradle.propertiesの更新

移行後、gradle.propertiesを確認し、次のフラグを削除してください。

  1. android.builtInKotlin
  2. android.newDsl
  3. android.uniquePackageNames
  4. android.enableAppCompileTimeRClass

さらに、作成した一時ファイルはすべて削除してください。

ガイドライン

  • Pythonスクリプトを作成または実行しないでください。
  • 外部依存関係を検査する場合のみ、Gradle依存関係キャッシュを検索し、それは最終手段としてのみ行ってください。
  • android.disallowKotlinSourceSets=false を gradle.properties に追加しないでください。
  • 変更を検証する際は、clean タスクを実行しないでください。時間の無駄です。

検証

移行後、以下を確認してください。

  1. Gradle IDEの同期が成功すること。
  2. ./gradlew help が成功すること。
  3. ./gradlew build --dry-run が成功すること。

トラブルシューティング

Paparazzi v2.0.0-alpha04およびそれ以前のバージョンは、AGP 9と問題があります。詳細については、references/paparazzi-gradle-9.mdを参照してください。

Individual skills in this repo

This repo contains 4 individual skills — each has its own dedicated page.

lerchenflo/claudeskills

Provides instructions for installing and using the `android` CLI. The `android` command-line tool is a critical tool for Android development and helps you create new Android projects, run Android apps on devices, manage and interact with Android virtual devices (including screenshots and UI inspection), manage Android SDK components, look up official Android documentation, and discover and install official Android skills.

lerchenflo/claudeskills

Manages Android performance profiling and debugging. Triggers when the user asks to record or analyze Android performance data, such as system traces, heap dumps, method recordings, callstack samples, memory allocations, or investigate bottlenecks, jank, memory leaks, and app startup issues on Android, or when the user asks to write, debug, or execute ad-hoc SQL queries. Applies to both user and system apps or services.

lerchenflo/claudeskills

Analyzes Android apps to identify key user workflows for AppFunctions such as creating a note, playing media, or sending an automated or AI agent triggered message, voice commands, or system shortcuts, without needing to open the app UI. Generates Kotlin code to expose these workflows to the Android system, allowing agents to discover and execute them on-device. Also refines KDoc documentation to ensure AI agents correctly understand and use the provided functionality.

lerchenflo/claudeskills

Use this skill to migrate your Jetpack Compose app to add adaptive edge-to-edge support and troubleshoot common issues. Use this skill to fix UI components (like buttons or lists) that are obscured by or overlapping with the navigation bar or status bar, fix IME insets, and fix system bar legibility.

関連スキル