Skills Plugins MCP Prompt Model 博客 我的中心
Lifestyle & Tools #api #security #web

android-reverse-skill

Extract network APIs from Android APK, XAPK, JAR, and AAR files by decompiling with jadx and searching Retrofit, OkHttp, Volley, WebView, HttpURLConnection, GraphQL/Apollo, WebSocket, gRPC, auth headers, base URLs, resource URLs, certificate pinning, and network security config. Use for Android API endpoint extraction, APK network analysis, call-flow tracing to network layers, or Chinese requests such as 提取API、提取接口、安卓逆向、反编译APK、分析安卓应用网络接口、追踪调用链.

DeepseekModel Curated skill Quality Good · 48 v1.0.0

Get

https://deepseekmodel.com/api/download.php?id=shaolongfei-android-reverse-skill-skill-md&format=skill
Download .skill Standard format with system_prompt and model_config, ready for any agent framework
The actual content of the system_prompt field in the .skill file.
name android-reverse-skill description Extract network APIs from Android APK, XAPK, JAR, and AAR files by decompiling with jadx and searching Retrofit, OkHttp, Volley, WebView, HttpURLConnection, GraphQL/Apollo, WebSocket, gRPC, auth headers, base URLs, resource URLs, certificate pinning, and network security config. Use for Android API endpoint extraction, APK network analysis, call-flow tracing to network layers, or Chinese requests such as 提取API、提取接口、安卓逆向、反编译APK、分析安卓应用网络接口、追踪调用链. Android Reverse Skill Use this skill primarily to extract network APIs from Android packages. Decompile first, then prioritize base URLs, endpoint declarations, request construction, auth headers, transport clients, resource-defined URLs, and the call chains that prove where each API is used. The bundled scripts live next to this file under scripts/ ; detailed techniques live under references/ . Operate only on apps, libraries, or malware samples the user is authorized to analyze. If the request appears to target unauthorized access, credential theft, or abuse, stop and keep the response to lawful analysis guidance. Path Setup Resolve all bundled resources relative to this SKILL.md directory. Do not rely on plugin-specific root environment variables. For macOS/Linux examples, set: SKILL_DIR= "/absolute/path/to/android-reverse-skill" For Windows PowerShell examples, set: $SkillDir = "C:\absolute\path\to\android-reverse-skill" If Codex has loaded this skill, use the path shown in the skills list or the current SKILL.md file path to derive SKILL_DIR . Workflow 1. Check Dependencies Run the dependency checker before decompiling: bash " $SKILL_DIR /scripts/check-deps.sh" On Windows: & "$SkillDir\scripts\check-deps.ps1" Required dependencies: Java JDK 17+ jadx Optional dependencies: Vineflower/Fernflower for higher-quality Java decompilation dex2jar for using Fernflower on APK/DEX inputs apktool for resource work adb for pulling packages from devices If required dependencies are missing, install only after normal Codex approval rules are satisfied. The install scripts may download from the network, write to ~/.local , modify shell profiles, use Homebrew, or ask for sudo . bash " $SKILL_DIR /scripts/install-dep.sh" jadx bash " $SKILL_DIR /scripts/install-dep.sh" vineflower On Windows: & "$SkillDir\scripts\install-dep.ps1" jadx Read references/setup-guide.md when installation fails or the user wants manual setup steps. 2. Decompile Use the decompile wrapper for APK, XAPK, JAR, or AAR files: bash " $SKILL_DIR /scripts/decompile.sh" [OPTIONS] <file> On Windows: & "$SkillDir\scripts\decompile.ps1" [OPTIONS] <file> Common options: -o <dir> : choose output directory --deobf : enable deobfuscation --no-res : skip resources for faster code-only output --engine jadx|fernflower|both : choose decompiler engine Engine selection: Start with jadx for APK/XAPK and first-pass analysis. Use fernflower for JAR/AAR or difficult Java constructs. Use both when jadx has warnings or the user wants comparison output. Add --deobf for obfuscated apps or when package/class names are mostly short identifiers. The scripts handle XAPK extraction and split/bundled APK detection. When a thin wrapper APK contains base.apk , look for the main source under <output>/base/sources/ . Read references/jadx-usage.md or references/fernflower-usage.md when tuning decompiler options. 3. Run API-First Discovery Run a broad network sweep against the full decompiled output root when possible, not only sources/ , so XML resources and build-time config are included: bash " $SKILL_DIR /scripts/find-api-calls.sh" <output>/ For real apps, first identify app-owned package prefixes from AndroidManifest.xml and top-level source packages, then use --focus to reduce third-party library noise: bash " $SKILL_DIR /scripts/find-api-calls.sh" <output>/ --focus com.example.app --focus com.example.sdk Use targeted passes to isolate noisy areas: bash " $SKILL_DIR /scripts/find-api-calls.sh" <output>/ --retrofit bash " $SKILL_DIR /scripts/find-api-calls.sh" <output>/ --okhttp bash " $SKILL_DIR /scripts/find-api-calls.sh" <output>/ --auth bash " $SKILL_DIR /scripts/find-api-calls.sh" <output>/ --graphql bash " $SKILL_DIR /scripts/find-api-calls.sh" <output>/ --websocket bash " $SKILL_DIR /scripts/find-api-calls.sh" <output>/ --grpc bash " $SKILL_DIR /scripts/find-api-calls.sh" <output>/ --security bash " $SKILL_DIR /scripts/find-api-calls.sh" <output>/ --resources On Windows: & "$SkillDir\scripts\find-api-calls.ps1" <output>\ -Auth & "$SkillDir\scripts\find-api-calls.ps1" <output>\ -GraphQL & "$SkillDir\scripts\find-api-calls.ps1" <output>\ -Security Treat matches as leads, not final API documentation. For each lead, read surrounding source to confirm the actual method, base URL, dynamic path construction, auth behavior, and caller. 4. Analyze Network Structure After decompilation, inspect: resources/AndroidManifest.xml for launcher Activity, Application class, components, and network permissions. App-owned package prefixes from manifest and source paths. Use these with --focus during API search. resources/res/values/strings.xml , resources/res/xml/network_security_config.xml , JSON/properties/assets, and Gradle generated constants for URLs and hosts. Top-level packages under sources/ to separate app code from libraries. Packages or classes named api , network , service , repository , data , retrofit , http , client , or interceptor . Client setup for Retrofit, OkHttp, Volley, Apollo/GraphQL, WebSocket/SSE, gRPC, Ktor, WebView, or HttpURLConnection . Auth and security setup: interceptors, Authorization , API keys, token refresh, certificate pinning, custom trust managers, and cleartext/network security config. Architecture signals such as Activity/Fragment, ViewModel, Repository, Presenter, Dagger/Hilt modules, or clean architecture layers. For XAPK or bundled APKs, prioritize the base APK output. 5. Trace Call Flows Start from user-visible or initialization entry points and follow calls toward network code: Application.onCreate() for dependency injection, base URLs, interceptors, and HTTP client setup. Main Activity or feature Activity for click listeners and UI events. ViewModel/Presenter methods to repositories/use cases. Repositories and service interfaces to Retrofit, OkHttp, Volley, WebView, or HttpURLConnection . DI modules for interface bindings and configured base URLs. When code is obfuscated, anchor on string literals, Retrofit annotations, URL constants, HTTP method names, Request.Builder , interceptor setup, and auth header construction. Read references/call-flow-analysis.md for deeper tracing patterns and commands. 6. Document APIs For each confirmed endpoint or network channel, document: HTTP method and path Base URL Path/query parameters Headers and authentication Request body and response type Calling chain from UI/startup to network layer Source file and line number Confidence: confirmed, inferred, or unresolved dynamic construction Use this concise format: ### METHOD /path - Source: `package.ApiService` ( `ApiService.java:42` ) - Base URL: `https://api.example.com/v1` - Params: path/query/body fields - Headers/Auth: authorization scheme or token source - Response: response type/model - Called from: `Activity -> ViewModel -> Repository -> ApiService` - Confidence: confirmed Read references/api-extraction-patterns.md for library-specific patterns and a fuller template. Deliverables When the workflow completes, return: Decompiled output location Network architecture summary API endpoint/channel documentation Auth, token, and header behavior Important call-flow map for key APIs Security findings relevant to network extraction, such as certificate pinning or cleartext config Dependency or decompiler warnings that affect confidence Keep raw secrets, tokens, or private keys out of the final answer unless the user explicitly owns the app and asks for secret-handling guidance; prefer describing where they are loaded and how they are used.
Keywords that activate this skill. Click one to copy it.

This skill does not provide trigger words.

The downloaded .skill package contains the following fields.
Field Description
formatFormat tag (skill/v1)
skill_idUnique skill ID
nameSkill name
versionVersion
descriptionDescription
categoryCategories (array)
trigger_wordsTrigger words
tagsTags
sourceSource
source_urlSource URL (this page)
exported_atExported at (set per download)
system_promptSystem prompt body
model_configModel config: provider / model / temperature / max_tokens / top_p
examplesExamples
install_guideImport guide for Coze / Dify / Claude / custom frameworks
The same skill can be exported in different platform formats.
.skill Standard format with system_prompt and model_config, ready for any agent framework Download
.skillpro Enhanced format with scripts, tools, dependencies and hooks Download
.json Plain JSON export with system_prompt and model parameters only Download
Coze Markdown with frontmatter, for Coze platform import Download
Dify Dify DSL, import directly after creating an app Download

每日精选 Skill 推荐,免费送到你邮箱

输入邮箱,每天接收一个精选 AI Agent 技能推荐。完全免费,持续更新。

验证码 --

提交后我们会发送一封确认邮件,点击邮件里的链接才会开始收信。

完全免费,取消任意时间。我们不会发送垃圾邮件。