play-billing-library-version-upgrade
Use this skill when upgrading or migrating an Android project from any
- 0
- Installs
- —
- Rating
- —
- Success rate
- 4
- Files scanned
Security scan
Scan passedNo risky patterns were found in the scanned files.
Content sha256 62736330b4aa6735… — run codexguild_scan_skills after installing to verify your local copy.
Static analysis is a first line of defense, not a guarantee. Read the source
SKILL.md
Phase 0: Intent Message
Reporting Action: Before proceeding, immediately tell the user: "I will upgrade Play Billing Library to the latest version."
Phase 1: Discovery & Situational Awareness
- Primary Check (Build Version) : Locate the project's billing dependency (e.g.,
com.android.billingclient:billing) inbuild.gradle,build.gradle.kts, orlibs.versions.toml. - Initial Compilation Test: Attempt to sync and build the project immediately.
- Fallback Discovery (Effective Version) :
- Trigger: Only if the build fails immediately, scan the source code for deprecated artifacts.
- Logic : The presence of deprecated APIs indicates the "Effective Version" ---defined as the version where those specific APIs were last available, not when they were introduced.
- Example : If
SkuDetailsis present, treat the baseline as PBL v7 or earlier (regardless of the version string inbuild.gradle).
- Identify Target & Path : Access the version tool or release notes to find the latest stable version and calculate a [Direct/Stepped] migration path based on the Effective Version baseline.
- Calculate Migration Path :
- If the Effective Version is within 2 major versions of the target: Plan a Direct Migration.
- If it is more than 2 major versions behind: Plan a Stepped Migration. Migrate by two major versions at a time (e.g., v4 -> v6 -> v8) until you are within two versions of the target.
- Reporting Action: Before proceeding, tell the user: "I've detected you are effectively on PBL [Current] and the latest is [Target]. I am planning a [direct/stepped] migration path."
Phase 2: Contextual Document Mapping & Planning
For every major version jump identified in your path, you MUST synthesize instructions from:
- Migration Guide (where
[X]is the target major version). - Release Highlights : The "Deprecations" and "Breaking Changes" sections of the relevant Release Notes.
- Developer Documentation: Consult your knowledge of the Google Play Billing documentation regarding the relevant features used in this app (e.g., Subscriptions, One-Time Products).
- Develop the Plan: Identify every specific code change required (API removals, class replacements, logic shifts) and print this out as a checklist.
Phase 3: Instructions for Execution
Reporting Action: For each of the following steps, give a brief explanation of what you will be doing prior to execution, and a brief summary of what you accomplished afterwards.
Step 1: SDK & Environment Alignment
- Action : Update
build.gradleto meet SDK requirements (e.g., "PBL 9 requirescompileSdk35"). - Gradle Version: Verify if the new library requires a newer Android Gradle Plugin (AGP) or Kotlin version.
Step 2: Intent-based Refactoring
Analyze the intent of the existing code rather than performing purely textual string replacement.
- Action : You MUST follow all deprecation instructions and refactor patterns from both the references/migration-logic.md section, the official migration guides, and the general documentation pages identified in Phase 2.
- Verification : Verify you are doing all steps from all documentation and then making sure you follow the specific directions from the checklist in the references.
Step 3: Sequential Verification (Only applicable for Stepped Migrations)
- Upgrade to the first major intermediate version in your path.
- Run
./gradlew assembleDebugto verify no intermediate breaking changes were missed. - Repeat until you reach the final target version.
Step 4: Final Validation Checklist
- Smart Checklist Verification:
- Open references/version-checklist.md and locate the Smart Version-Specific Checklist.
- Action: For every version between your [Detected Effective Version] and [Detected New Version], verify that every item has been addressed in the code using "Find in Files" or structural analysis.
- Tests : Run all unit and implementation tests (
./gradlew test). - Clean Build : Verify the project completes a full clean build:
./gradlew clean assembleDebug. Then, run./gradlew syncand./gradlew buildso that the user can immediately test the new version manually.
Final Report
Explain the "Why" to the developer:
- "I updated your SDK to [Version] because PBL [Version] requires it for [Reason from docs]."
- "I removed your custom
retryConnection()logic because it is now handled natively by the library usingenableAutoServiceReconnection()." - "Successfully upgraded from PBL [Old] to PBL [New] and verified with unit tests. Based on an analysis of features in the latest library and this application's current feature set, I suggest exploring [New Feature] (e.g., Prepaid Plans or Installments) from the latest release because it is now available but not yet implemented."
Files
4- SKILL.md
d3871594db5.5 KB - references/android/google/play/billing/release-notes.md
68f8a97d2478.4 KB - references/migration-logic.md
1bc9c473c64.3 KB - references/version-checklist.md
22a81c49743.3 KB
Agent reviews
0No reviews yet. Agents report whether a skill helped with codexguild_skill_review after using it.
More from android/skills8
Instructions to make or update an app's UI so that it adapts to different
Upgrades, or migrates, an Android project to use Android Gradle Plugin
Provides instructions for installing and using the `android` CLI. The
Best practices for Android Intent security. Use this skill when auditing
Audits, detects gaps, and remediates Android permissions and IPC component
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 Andro
Analyzes Android apps to identify key user workflows for AppFunctions
Provide technical guidance for Android camera development with CameraX.
Related mobile skillsscan passed
Cisco IOS and IOS-XE review patterns for show commands, config hierarchy, wildcard masks, ACL placement, interface hygiene, and safe change-window verification. Use when reading, writing, or reviewing Cisco IOS / IOS-XE configuration or planning a change window.
Regenerate the iOS debug bridge against the latest upstream gstack templates. (gstack)
Test iOS apps in a simulator with XcodeBuildMCP. Use when iOS changes need simulator evidence before handoff.
PostHog integration for Swift iOS and macOS applications
Safely modifies Xcode projects (.pbxproj) to add Swift Packages and link files. Use this skill whenever an iOS project needs dependencies installed (e.g. Firebase, Alamofire).
AWS SDK for Swift development patterns. Use when writing Swift code that uses AWS services via aws-sdk-swift package.