Agent skill

Installing And Managing Apps

by skydoves in skydoves/android-testing-skills

A skill your agent uses to install, uninstall, list, inspect, and reset Android apps via adb install (with -r reinstall, -d allow-downgrade, -t allow test packages, -g grant all runtime permissions…

Apache-2.0Auto-check passedMobile

Install Installing And Managing Apps

skills CLI
$ npx skills add skydoves/android-testing-skills --skill installing-and-managing-apps -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install skydoves/android-testing-skills installing-and-managing-apps --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/skydoves/android-testing-skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/adb/apps/installing-and-managing-apps .claude/skills/installing-and-managing-apps && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
installing-and-managing-apps
GitHub stars
333
Token cost
~4.2k tokens
SKILL.md length
1,676 words
Files
1
Skills in repo
50
Repo updated
First seen
Licence
Apache-2.0

At a glance

A skill your agent uses to install, uninstall, list, inspect, and reset Android apps via adb install (with -r reinstall, -d allow-downgrade, -t allow test packages, -g grant all runtime permissions…

  • Reset Android apps via adb install (with -r reinstall
  • SKILL.md covers When to use this skill, When NOT to use this skill, Prerequisites and Workflow, plus 4 more sections
  • Calls adb
  • -d allow-downgrade

What it does

Installing And Managing Apps is an agent skill from skydoves/android-testing-skills. Use this skill to install, uninstall, list, inspect, and reset Android apps via adb install (with -r reinstall, -d allow-downgrade, -t allow test packages, -g grant all runtime permissions, --user per-user install, adb install-multiple for split APKs) and the on-device pm tool (pm list packages [-f|-d|-e|-s|-3|-i|-u], pm path, pm clear, pm grant / pm revoke, pm enable / pm disable, pm uninstall [-k], cmd package dump-profiles). Calls out the canonical hermetic-reset pattern (pm clear wipes data; am force-stop…

Its SKILL.md is about 4.2k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

It sits in Mobile, covering Mobile testing and debugging and Android development. The repository describes itself as: ⚡️ A set of skills for Android testing: Compose UI, AndroidX Test, JVM unit tests, and ADB. The licence is Apache-2.0.

When your agent uses it

  • Reset Android apps via adb install (with -r reinstall
  • -d allow-downgrade
  • -t allow test packages
  • -g grant all runtime permissions

Example prompts

  • “reset app between tests”
  • “how do I list third-party apps”
  • “/installing-and-managing-apps”

What it can do on your machine

Read from SKILL.md and the folder at commit 8665ed5. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • adb

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    Links to these hosts (documentation or services it may open):

    • developer.android.com

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Installing And Managing Apps loads about 4.2k tokens when it runs. Until then it costs about 237 tokens; SKILL.md has 1,676 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~237
When it runs · the whole SKILL.md, loaded when a task matches
~4.2k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from skydoves/android-testing-skills at commit 8665ed5, republished under its Apache-2.0 licence (© skydoves). 1,676 words, ~4,243 tokens.

Download SKILL.mdSave it as .claude/skills/installing-and-managing-apps/SKILL.md (or your agent's skills folder).
name
installing-and-managing-apps
description
Use this skill to install, uninstall, list, inspect, and reset Android apps via `adb install` (with `-r` reinstall, `-d` allow-downgrade, `-t` allow test packages, `-g` grant all runtime permissions, `--user` per-user install, `adb install-multiple` for split APKs) and the on-device `pm` tool (`pm list packages [-f|-d|-e|-s|-3|-i|-u]`, `pm path`, `pm clear`, `pm grant` / `pm revoke`, `pm enable` / `pm disable`, `pm uninstall [-k]`, `cmd package dump-profiles`). Calls out the canonical hermetic-reset pattern (`pm clear` wipes data; `am force-stop` does NOT) and the common install errors (`INSTALL_FAILED_USER_RESTRICTED`, `INSTALL_FAILED_VERSION_DOWNGRADE`, signing-conflict). Use when the user mentions "reset app between tests", `pm clear`, `am force-stop` confusion, install fails after debugger, split APK install, runtime permission grants, multi-user profile installs, or "how do I list third-party apps".
license
Apache-2.0. See LICENSE for complete terms.
metadata.author
Jaewoong Eum (skydoves)
metadata.keywords
adb-install, pm-clear, pm-grant, pm-list-packages, force-stop, install-failed-user-restricted, install-failed-version-downgrade, install-multiple…

Installing and Managing Apps — adb install and pm

App lifecycle from the host. adb install ships an APK; pm is the on-device PackageManager front-end that lists, paths, clears, enables/disables, and grants permissions. The most common subtle bug in test scaffolding is using am force-stop to "reset" an app between tests — that command kills the process but leaves SharedPreferences, the Room DB, and files on disk. The hermetic equivalent is pm clear.

When to use this skill

  • The user wants to install an APK from the host or push a debug build between every test run.
  • The user asks "how do I reset the app's state between tests?" or sees stale data carry over from one test to the next.
  • The user hits INSTALL_FAILED_VERSION_DOWNGRADE, INSTALL_FAILED_USER_RESTRICTED, or signature mismatch errors.
  • The user wants to grant all runtime permissions at install (-g), or grant/revoke a single permission post-install.
  • The user wants to list only third-party packages, find an APK on disk, or dump a Baseline Profile.

When NOT to use this skill

  • The user wants to actually run instrumented tests against the installed app — use ../../tests/running-instrumented-tests-via-adb/SKILL.md.
  • The user wants to choose a device or wait for boot — use ../../devices/connecting-to-devices/SKILL.md.
  • The user wants the architecture / environment / authentication picture — use ../../architecture/understanding-adb-architecture/SKILL.md.

Prerequisites

  • A connected device with state device (see ../../devices/connecting-to-devices/SKILL.md).
  • The APK(s) signed with a debug or release key the developer controls.
  • For test APKs, the manifest sets android:testOnly="true" (Gradle does this for androidTest builds) and install requires -t.
  • For runtime permissions, the device runs API 23+.

Workflow

  • 1. Install with the right flags. From pm install (and the adb install wrapper) options table:

    FlagMeaning
    -r"Reinstall an existing app, keeping its data." Required when the package is already installed; without it adb install returns INSTALL_FAILED_ALREADY_EXISTS. CI scripts MUST always pass -r for repeat runs.
    -d"Allow version code downgrade." Required when the new APK has a lower versionCode. Note: per adb help, restricted to debuggable packages on stock builds.
    -t"Allow test APKs to be installed." Required for any APK whose manifest carries android:testOnly="true" (i.e. all Gradle androidTest builds).
    -g"Grant all permissions listed in the app manifest." Best for hermetic test runs.
    -lForward-lock the application (legacy DRM). Almost never needed today.
    -sInstall on the SD card / external storage (when device supports it).
    --user <id>Install for a specific user profile. Default: all users. current resolves to the foreground user.
    `--install-location 01
    -fInstall on internal system memory.
    -i <installer_pkg>Tag the install with an installer package name.
    --fastdeployPatch-only install (only changed parts of the APK).
    --incremental / --no-incrementalStreamed install; requires APK Signature Scheme v4 sidecar .idsig. --wait blocks until full APK is available.

    Common recipes:

    bash
    adb install -r app-debug.apk                       # ordinary reinstall
    adb install -r -d app-debug.apk                    # allow downgrade
    adb install -r -t -g app-androidTest.apk           # test APK with all permissions granted
    adb install -r -d --user current app-debug.apk     # force foreground-user install
  • 2. For split APKs use adb install-multiple. A modern App Bundle produces a base APK plus per-feature/per-config splits — adb install of just one fails:

    bash
    adb install-multiple -r -t -g \
      base-master.apk base-arm64_v8a.apk base-xxhdpi.apk
  • 3. Reset app state between tests with pm clear. Do NOT use am force-stop for hermetic isolation.

    • am force-stop <pkg> "Force-stop everything associated with package." — kills processes only. SharedPreferences, Room/SQLite databases, files in /data/data/<pkg>, and cache persist.
    • pm clear <pkg> "Delete all data associated with a package." — wipes user data and cache. The next launch starts from a fresh-install state. For genuine hermetic isolation between tests (the default for instrumented suites), use pm clear. am force-stop is appropriate only when the explicit goal is to kill the process while preserving state (e.g. testing a "resume from killed" path).
    bash
    adb shell pm clear com.example.app

    Most pipelines wire this up via Test Orchestrator's clearPackageData instrumentation arg — see ../../tests/running-instrumented-tests-via-adb/SKILL.md.

  • 4. List, find, and inspect packages with pm list packages and pm path.

    pm list packages [-f] [-d] [-e] [-s] [-3] [-i] [-u] [--user <id>] [<filter>]
    FlagMeaning
    -f"See associated file."
    -d"Filter to only show disabled packages."
    -e"Filter to only show enabled packages."
    -s"Filter to only show system packages."
    -3"Filter to only show third-party packages."
    -i"See the installer for the packages."
    -u"Include uninstalled packages."
    --user <id>"The user space to query."

    Recipes:

    bash
    adb shell pm list packages -3 | sort                   # all sideloaded apps
    adb shell pm list packages -f com.example              # APK paths for matching pkgs
    adb shell pm path com.example.app                      # package:/data/app/.../base.apk
    adb shell dumpsys package com.example.app | head -200  # detailed install/permission info
  • 5. Manage runtime permissions with pm grant / pm revoke (API 23+).

    "Grant a permission to an app. On devices running Android 6.0 (API level 23) and higher, the permission can be any permission declared in the app manifest."

    bash
    adb shell pm grant  com.example.app android.permission.CAMERA
    adb shell pm revoke com.example.app android.permission.CAMERA
    adb shell pm reset-permissions                         # reset every app to defaults

    Flagging -g at install time grants every manifest-declared runtime permission in one shot — preferred for hermetic test runs.

  • 6. Enable / disable packages or specific components.

    bash
    adb shell pm disable com.example.app                       # whole package
    adb shell pm disable-user --user 0 com.example.app         # per-user disable (preserves data)
    adb shell pm enable  com.example.app
    adb shell pm enable  com.example.app/.MyTestActivity       # specific component

    Useful for forcing a known accessibility-service / IME state in tests, or for staging A/B comparisons by disabling rivals.

  • 7. Uninstall correctly.

    pm uninstall [-k] [--user <id>] [--versionCode <vc>] <package>
    • -k "Keep the data and cache directories after package removal." Useful for upgrade-from-clean tests where the user data simulates an existing install.
    • --user <id> per-user removal.
    • --versionCode <vc> "Only uninstalls if the app has the given version code." Idempotent uninstall in CI scripts.
    bash
    adb uninstall com.example.app                       # equivalent to: pm uninstall <pkg>
    adb shell pm uninstall -k com.example.app           # uninstall but preserve data
    adb shell pm uninstall --user 0 com.example.app     # only from primary user
  • 8. Dump a Baseline Profile when needed.

    "Starting in Android 7.0 (API level 24), the Android Runtime (ART) collects execution profiles for installed apps... adb shell cmd package dump-profiles <package> then adb pull /data/misc/profman/<package>.prof.txt." The doc warns: "It is only possible to retrieve the execution profile filename if you have root access to the file system, for example, on an emulator." On user builds without root, use androidx.benchmark Macrobenchmark to extract the profile programmatically.

  • 9. Diagnose common install failures:

    ErrorCauseFix
    INSTALL_FAILED_VERSION_DOWNGRADENew APK's versionCode is lower than the installed one.Add -d.
    INSTALL_FAILED_USER_RESTRICTEDMulti-user device: the install user (typically the secondary or work profile) blocks installs.--user 0 or --user current; have the user disable "Install via USB" restriction in their profile.
    INSTALL_FAILED_UPDATE_INCOMPATIBLE (signature mismatch)New APK signed with a different key than the installed one.Uninstall first (adb uninstall <pkg>); resign with the same key.
    INSTALL_FAILED_TEST_ONLYAPK has android:testOnly="true" but -t was omitted.Add -t (typical for app-androidTest.apk).
    INSTALL_FAILED_INVALID_APK (split APK only)Tried to install one APK of a split set.Use adb install-multiple.
    INSTALL_FAILED_INSUFFICIENT_STORAGEOut of space.adb shell df /data and cleanup.
  • 10. Quote the shell correctly (Platform Tools 23+ rule). Verbatim from the adb page:

    "With Android Platform Tools 23 and higher, adb handles arguments the same way that the ssh(1) command does. ... adb shell setprop key 'two words' is now an error ... To make the command work, quote twice, once for the local shell and once for the remote shell, as you do with ssh(1). For example, adb shell setprop key \"'two words'\" works because the local shell takes the outer level of quoting and the device still sees the inner level of quoting." Same rule applies for any pm argument with spaces, special characters, or shell metacharacters.

Show full SKILL.md (410 more words)Show less

Patterns

Pattern: WRONG vs RIGHT — resetting app state between tests
bash
# WRONG
adb shell am force-stop com.example.app
# Run next test...
# WRONG because: force-stop kills the process but leaves SharedPreferences,
# Room DB, files in /data/data/<pkg>, and cache. Tests that read any of those
# carry stale state into the next case. Flake follows.
bash
# RIGHT
adb shell pm clear com.example.app
# Run next test against fresh-install state.

For test runs, the equivalent done by the runner itself is -e clearPackageData true to AndroidX Test Orchestrator — see ../../tests/running-instrumented-tests-via-adb/SKILL.md.

Pattern: WRONG vs RIGHT — installing an androidTest APK
bash
# WRONG
adb install app-androidTest.apk
# adb: failed to install app-androidTest.apk: Failure [INSTALL_FAILED_TEST_ONLY:
#   installPackageLI]
# WRONG because: any APK with android:testOnly="true" (every Gradle-built test
# APK) requires `-t`.
bash
# RIGHT
adb install -r -t -g app-androidTest.apk
# -r: reinstall keeping data (or overwriting); -t: allow test packages;
# -g:  grant all runtime permissions for hermetic tests.
Pattern: WRONG vs RIGHT — version downgrade after a debug install
bash
# WRONG
adb install -r app-release.apk
# adb: failed to install app-release.apk: Failure [INSTALL_FAILED_VERSION_DOWNGRADE]
# WRONG because: the installed debug APK has a higher versionCode than the
# release APK being installed.
bash
# RIGHT
adb install -r -d app-release.apk     # allow downgrade
# Or, when signature also changes:
adb uninstall com.example.app
adb install     app-release.apk
Pattern: WRONG vs RIGHT — listing only third-party packages
bash
# WRONG
adb shell pm list packages | grep -v 'com.android'
# WRONG because: many third-party packages also have names containing
# "com.android" (e.g. third-party Android library demos), and Google's own
# pre-installed apps carry varied prefixes (com.google.android.*).
bash
# RIGHT
adb shell pm list packages -3
# `-3` filters to third-party (non-system) packages only.

Mandatory rules

  • MUST use pm clear <pkg> to reset app state between tests; am force-stop does NOT clear data.
  • MUST add -t when installing any test APK (android:testOnly="true"); add -d when downgrading; add -g to grant all manifest runtime permissions.
  • MUST use adb install-multiple for split APKs (App Bundles). Single-APK install of one split fails with INSTALL_FAILED_INVALID_APK.
  • MUST NOT assume adb install of a freshly built debug APK will replace a release-signed install — signing-conflict errors require uninstall first.
  • MUST NOT rely on pm list packages | grep heuristics; use the documented filters (-3, -s, -d, -e, -u).
  • PREFERRED: wire clearPackageData true through Test Orchestrator (../../tests/running-instrumented-tests-via-adb/SKILL.md) instead of running pm clear manually before every test.
  • PREFERRED: quote string arguments twice when they contain spaces or shell metacharacters — Platform Tools 23+ requires this (ssh-style quoting).

Verification

  • adb install -r -t -g app-androidTest.apk returns Success.
  • adb shell pm path com.example.app prints a package:/data/app/...base.apk line for the just-installed package.
  • adb shell pm clear com.example.app returns Success, and adb shell run-as com.example.app ls /data/data/com.example.app shows only freshly created cache/ and code_cache/ entries.
  • adb shell pm list packages -3 | grep com.example.app lists the package after install.
  • After adb shell pm grant com.example.app android.permission.CAMERA, adb shell dumpsys package com.example.app | grep CAMERA shows the permission as granted.
  • adb uninstall com.example.app returns Success and pm list packages com.example no longer shows the app.
  • CI run wipes app state between tests via Orchestrator (-e clearPackageData true) or an explicit pm clear step in @Before / @After.

References

  • ADB user guide (pm install, pm uninstall, pm clear, pm grant, pm list packages): https://developer.android.com/tools/adb#pm
  • AGP/Studio command-line testing (am instrument and orchestrator wiring): https://developer.android.com/studio/test/command-line
  • Baseline Profile dump via cmd package dump-profiles: https://developer.android.com/topic/performance/baselineprofiles
  • App Bundle / split APK install: https://developer.android.com/studio/build/build-variants
  • tasks/research/A2-adb-shell-commands.md — verbatim pm install/pm list/pm clear flag tables, force-stop vs pm clear distinction, ssh-style double-shell quoting since Platform Tools 23.
  • docs/CORPUS.md §I.10 — "force-stop does NOT clear data — pair with pm clear for hermetic reset."
  • Sibling skills:
    • High-level architecture: ../../architecture/understanding-adb-architecture/SKILL.md
    • Connect a device: ../../devices/connecting-to-devices/SKILL.md
    • Wireless ADB: ../../devices/connecting-over-wifi/SKILL.md
    • Run tests via am instrument (and Orchestrator clearPackageData): ../../tests/running-instrumented-tests-via-adb/SKILL.md
  • Cross-set neighbours:
    • Run instrumented tests with AndroidJUnit4: ../../../instrumentation/runner/running-instrumented-tests-with-androidjunit4/SKILL.md
    • Configure JUnit4 on Android: ../../../jvm-tests/runner/configuring-junit4-on-android/SKILL.md
    • Source-set strategy: ../../../fundamentals/strategies/organizing-test-source-sets/SKILL.md

© skydoves, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in adb/apps/installing-and-managing-apps of skydoves/android-testing-skills.

Open the folder on GitHubat commit 8665ed5

Compare with similar skills

Installing And Managing Apps next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Installing And Managing Apps compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Installing And Managing Apps this skillskydoves/android-testing-skills333—~4.2kAutomated safety check: PassApache-2.0
Mobile QAtloncorp/tlon-apps107—~2.4kAutomated safety check: PassMIT
Frontend Maestronekomangaorg/Neko2.8k—~1.3kAutomated safety check: PassApache-2.0
Android Emulator SkillMoustachauve/WLED-Android1691 repos~911Automated safety check: PassApache-2.0
Visualizing Recomposition CascadesrosuH/EasyWatermark1.9k1 repos~4.3kAutomated safety check: PassApache-2.0
Run Jetpack Android Appwordpress-mobile/WordPress-Android3.2k—~886Automated safety check: PassGPL-2.0

Similar skills

  • Mobile QA

    tloncorp/tlon-apps

    Run a mobile QA checklist on a physical Android device over adb for tlon-apps, then triage what fails into fixes.

    107 GitHub stars~2.4k tokensUpdated today
    MobileAuto-check passed
  • Frontend Maestro

    nekomangaorg/Neko

    Orchestrates macro-level UI architecture, complex Jetpack Compose structures, and screen-to-screen flows.

    2.8k GitHub stars~1.3k tokensUpdated yesterday
    MobileAuto-check passed
  • Android Emulator Skill

    Moustachauve/WLED-Android

    Production-ready scripts for Android app testing, building, and automation.

    169 GitHub starsUsed in 1 repo~911 tokens
    MobileAuto-check passed
  • A skill your agent uses to drive the active investigation features of the skydoves/compose-stability-analyzer IntelliJ / Android Studio plugin: the static Recomposition Cascade visualizer that walks…

    1.9k GitHub starsUsed in 1 repo~4.3k tokens
    MobileAuto-check passed
  • Run Jetpack Android App

    wordpress-mobile/WordPress-Android

    Builds the Jetpack debug app with Gradle and installs it on a connected Android device or an emulator started from an available AVD.

    3.2k GitHub stars~886 tokensUpdated today
    MobileAuto-check passed
  • Android device and emulator control from inside Orca over adb, with the live device view in Orca's emulator pane. Use when driving an adb-connected emulator…

    88k GitHub stars~558 tokensUpdated today
    MobileAuto-check passed

More from skydoves/android-testing-skills

All 50 skills in this repo
  • Asserting Bounds And Dimensions

    skydoves/android-testing-skills

    A skill your agent uses to verify Compose layout measurements from a UI test using assertWidthIsEqualTo, assertHeightIsEqualTo, assertWidthIsAtLeast, assertHeightIsAtLeast…

    333 GitHub stars~3.3k tokensUpdated 4 mo ago
    Auto-check passed
  • Asserting Node State And Text

    skydoves/android-testing-skills

    A skill your agent uses to verify a Compose semantics node's properties from a UI test using assertExists, assertDoesNotExist, assertIsDisplayed, assertIsNotDisplayed, assertIsDeactivated…

    333 GitHub stars~3.6k tokensUpdated 4 mo ago
    Auto-check passed
  • Capturing Preview Screenshots In CI

    skydoves/android-testing-skills

    A skill your agent uses to render every Jetpack Compose @Preview as a screenshot on a real Android device or emulator and publish a browsable HTML catalog from CI.

    333 GitHub stars~4.5k tokensUpdated 4 mo ago
    Auto-check: notes
  • Capturing Screenshots And Screenrecord

    skydoves/android-testing-skills

    A skill your agent uses to capture visual artefacts from a device for test failures, golden image generation, QA repro, and demo videos.

    333 GitHub stars~3.7k tokensUpdated 4 mo ago
    Auto-check passed
  • Choosing Test Rule Vs Runtest

    skydoves/android-testing-skills

    A skill your agent uses to pick the correct Compose UI test entry point.

    333 GitHub stars~4.5k tokensUpdated 4 mo ago
    Auto-check passed
  • Choosing What To Test

    skydoves/android-testing-skills

    A skill your agent uses to pick which behaviors to cover in an Android test suite using Google's five-category state vocabulary plus the explicit "what NOT to test" list from…

    333 GitHub stars~4.6k tokensUpdated 4 mo ago
    Auto-check passed

Categories

Questions about Installing And Managing Apps

What does Installing And Managing Apps do?

A skill your agent uses to install, uninstall, list, inspect, and reset Android apps via adb install (with -r reinstall, -d allow-downgrade, -t allow test packages, -g grant all runtime permissions…. Installing And Managing Apps is an agent skill from skydoves/android-testing-skills. Use this skill to install, uninstall, list, inspect, and reset Android apps via adb install (with -r reinstall, -d allow-downgrade, -t allow test packages, -g grant all runtime permissions, --user per-user install, adb install-multiple for split APKs) and the on-device pm tool (pm list packages [-f|-d|-e|-s|-3|-i|-u], pm path, pm clear, pm grant / pm revoke, pm enable / pm disable, pm uninstall [-k], cmd package dump-profiles).

When should I use Installing And Managing Apps?

Installing And Managing Apps fits situations like: reset Android apps via adb install (with -r reinstall; -d allow-downgrade; -t allow test packages; -g grant all runtime permissions.

How do I install Installing And Managing Apps in Claude Code?

Run `npx skills add skydoves/android-testing-skills --skill installing-and-managing-apps -a claude-code`. Or copy the skill folder (adb/apps/installing-and-managing-apps in skydoves/android-testing-skills) into .claude/skills/installing-and-managing-apps in your project. Claude Code loads it when a task matches its description.

How do I install Installing And Managing Apps in Codex?

Run `npx skills add skydoves/android-testing-skills --skill installing-and-managing-apps -a codex`. Or copy the skill folder (adb/apps/installing-and-managing-apps in skydoves/android-testing-skills) into .agents/skills/installing-and-managing-apps in your project. Codex loads it when a task matches its description.

Can I use Installing And Managing Apps in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add skydoves/android-testing-skills --skill installing-and-managing-apps -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/installing-and-managing-apps, .gemini/skills/installing-and-managing-apps, .github/skills/installing-and-managing-apps and .opencode/skills/installing-and-managing-apps in your project.

What does Installing And Managing Apps need to run?

Going by SKILL.md and its folder, Installing And Managing Apps needs the command-line tools its instructions call (adb).

Does Installing And Managing Apps access the network?

SKILL.md names 1 domain. As links in the text: developer.android.com. This is read from the text; nothing was executed.

Is Installing And Managing Apps safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Installing And Managing Apps use?

Installing And Managing Apps is published under the Apache-2.0 licence (declared in SKILL.md). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Installing And Managing Apps use?

About 4.2k tokens (SKILL.md is roughly 17k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Installing And Managing Apps?

Skills that share tags, products or a category with Installing And Managing Apps: Mobile QA (tloncorp/tlon-apps, 107 stars), Frontend Maestro (nekomangaorg/Neko, 2.8k stars), Android Emulator Skill (Moustachauve/WLED-Android, 169 stars) and Visualizing Recomposition Cascades (rosuH/EasyWatermark, 1.9k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Installing And Managing Apps?

skydoves (a GitHub user) maintains it in skydoves/android-testing-skills, which has 333 GitHub stars. The repository holds 50 skills in this directory. The repository was last updated on May 25, 2026.

Source: skydoves/android-testing-skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.