analyze-mobile-app
Compare original and translation side by side
🇺🇸
Original
English🇨🇳
Translation
ChineseMobile App Competitive Analyzer
移动应用竞品分析器
Analisi competitiva automatizzata di app mobile Android via ADB. Naviga l'app, cattura screenshot, documenta UX/UI, genera report completi.
通过ADB对安卓移动应用进行自动化竞品分析。可导航应用、截取屏幕截图、记录UX/UI、生成完整报告。
Trigger
触发词
- "analizza app [nome]"
- "competitor analysis [app]"
- "esplora UX di [app]"
- "analisi competitiva [app]"
- /analyze-mobile-app
- "分析应用 [名称]"
- "竞品分析 [应用]"
- "探索[应用]的UX"
- "竞品分析 [应用]"
- /analyze-mobile-app
Config
配置
yaml
adb_path: D:\Software\Android\Sdk\platform-tools\adb.exe
screenshot_format: "{app}_{seq:02d}.png"
output_structure:
- docs/{APP}_ANALYSIS.md
- docs/{APP}_REPORT.html
- docs/{APP}_USER_FLOWS.md
- img/*.pngyaml
adb_path: D:\Software\Android\Sdk\platform-tools\adb.exe
screenshot_format: "{app}_{seq:02d}.png"
output_structure:
- docs/{APP}_ANALYSIS.md
- docs/{APP}_REPORT.html
- docs/{APP}_USER_FLOWS.md
- img/*.pngWorkflow
工作流程
1. SETUP
1. 设置
bash
undefinedbash
undefinedVerifica connessione
检查连接
adb devices
adb devices
Output: emulator-5554 device
输出: emulator-5554 device
Info device
设备信息
adb shell wm size
adb shell wm size
Package app corrente
当前应用包名
adb shell dumpsys window | grep mCurrentFocus
undefinedadb shell dumpsys window | grep mCurrentFocus
undefined2. LOOP PRINCIPALE (ripetere per ogni schermata)
2. 主循环(对每个屏幕重复执行)
bash
undefinedbash
undefinedA) Screenshot
A) 截图
adb exec-out screencap -p > {app}_{seq:02d}.png
adb exec-out screencap -p > {app}_{seq:02d}.png
B) Analizza screenshot visivamente (Read tool)
B) 可视化分析截图(使用读取工具)
C) UI dump per coordinate
C) 导出UI以获取坐标
adb shell uiautomator dump /sdcard/ui.xml
adb shell cat /sdcard/ui.xml
adb shell uiautomator dump /sdcard/ui.xml
adb shell cat /sdcard/ui.xml
D) Trova bounds: [left,top][right,bottom]
D) 查找边界: [left,top][right,bottom]
E) Calcola centro: x=(left+right)/2, y=(top+bottom)/2
E) 计算中心坐标: x=(left+right)/2, y=(top+bottom)/2
F) Tap
F) 点击
adb shell input tap X Y
adb shell input tap X Y
G) Ripeti da A)
G) 回到步骤A重复执行
undefinedundefined3. COMANDI NAVIGAZIONE
3. 导航命令
bash
adb shell input tap X Y # Tap
adb shell input swipe 540 1500 540 500 300 # Scroll down
adb shell input swipe 540 500 540 1500 300 # Scroll up
adb shell input swipe 900 1000 100 1000 300 # Swipe left
adb shell input swipe 100 1000 900 1000 300 # Swipe right
adb shell input swipe X Y X Y 1000 # Long press
adb shell input keyevent 4 # Back
adb shell input keyevent 3 # Home
adb shell input keyevent 66 # Enter
adb shell input text "testo" # Typebash
adb shell input tap X Y # 点击
adb shell input swipe 540 1500 540 500 300 # 向下滚动
adb shell input swipe 540 500 540 1500 300 # 向上滚动
adb shell input swipe 900 1000 100 1000 300 # 向左滑动
adb shell input swipe 100 1000 900 1000 300 # 向右滑动
adb shell input swipe X Y X Y 1000 # 长按
adb shell input keyevent 4 # 返回
adb shell input keyevent 3 # 主页
adb shell input keyevent 66 # 回车
adb shell input text "testo" # 输入文本(testo为示例文本)Analisi
分析内容
Visual Design
视觉设计
- Colori (hex), tipografia, spaziature, icone, illustrazioni, brand
- 颜色(十六进制)、排版、间距、图标、插图、品牌标识
UX Patterns
UX模式
- Navigazione, gerarchia info, CTA, form, onboarding, stati vuoti/errore
- 导航、信息层级、CTA(号召性用语)、表单、引导流程、空状态/错误状态
Psicologia
心理学应用
- Social proof, scarcity, commitment, gamification, loss aversion
- 社交证明、稀缺性、承诺与一致、游戏化、损失厌恶
Business Model
商业模式
- Paywall type, pricing, free vs premium, upsell timing
- 付费墙类型、定价策略、免费版vs付费版、交叉销售时机
Report Templates
报告模板
ANALYSIS.md
ANALYSIS.md
markdown
undefinedmarkdown
undefined{APP} - Competitive Analysis
{APP} - 竞品分析
Date: {DATE} | Version: {VERSION} | Method: ADB + UI inspection
日期: {DATE} | 版本: {VERSION} | 方法: ADB + UI检查
Executive Summary
执行摘要
| Metric | Value |
|---|---|
| Onboarding screens | {N} |
| Input methods | {N} |
| Price (annual) | {PRICE} |
| 指标 | 数值 |
|---|---|
| 引导流程屏幕数 | {N} |
| 输入方式 | {N} |
| 年费 | {PRICE} |
Company Profile
公司概况
| Attribute | Value |
|---|---|
| Company | {NAME} |
| HQ | {LOCATION} |
| Founded | {YEAR} |
| 属性 | 数值 |
|---|---|
| 公司名称 | {NAME} |
| 总部地点 | {LOCATION} |
| 成立年份 | {YEAR} |
Target Market
目标市场
Segment A ({PCT}%)
细分市场A(占比{PCT}%)
- Profile: {PROFILE}
- Motivation: {MOTIVATION}
- 用户画像: {PROFILE}
- 动机: {MOTIVATION}
Onboarding Flow
引导流程
| Stage | Screens | Purpose |
|---|
| 阶段 | 屏幕数 | 目的 |
|---|
Psychology
心理学应用
- Social Proof: {DESC}
- Gamification: {DESC}
- 社交证明: {DESC}
- 游戏化: {DESC}
Pricing
定价策略
| Plan | Price |
|---|---|
| Monthly | {PRICE} |
| Annual | {PRICE} |
| 套餐 | 价格 |
|---|---|
| 月付 | {PRICE} |
| 年付 | {PRICE} |
Design System
设计系统
css
--primary: {HEX};
--accent: {HEX};
--radius: {PX};css
--primary: {HEX};
--accent: {HEX};
--radius: {PX};Navigation
导航结构
| Tab | Function |
|---|
| 标签页 | 功能 |
|---|
Features
功能对比
| Feature | Free | Premium |
|---|
| 功能 | 免费版 | 付费版 |
|---|
Recommendations
建议
- {REC}
- {REC}
Screenshot Index
截图索引
| File | Content |
|---|---|
| {app}_01.png | {DESC} |
undefined| 文件 | 内容 |
|---|---|
| {app}_01.png | {DESC} |
undefinedUSER_FLOWS.md
USER_FLOWS.md
markdown
undefinedmarkdown
undefined{APP} - User Flows
{APP} - 用户流程
Navigation
导航
```mermaid
flowchart TD
TAB1[Tab 1] --> CONTENT1
TAB2[Tab 2] --> CONTENT2
```
mermaid
flowchart TD
TAB1[Tab 1] --> CONTENT1
TAB2[Tab 2] --> CONTENT2Onboarding
引导流程
```mermaid
flowchart TD
START([Launch]) --> WELCOME
WELCOME --> QUESTIONS
QUESTIONS --> PAYWALL
PAYWALL --> HOME([Home])
```
mermaid
flowchart TD
START([启动应用]) --> WELCOME
WELCOME --> QUESTIONS
QUESTIONS --> PAYWALL
PAYWALL --> HOME([主页])Core Feature
核心功能流程
```mermaid
flowchart TD
HOME --> ADD[+]
ADD --> METHOD1
ADD --> METHOD2
METHOD1 --> RESULT
RESULT --> SAVE --> HOME
```
undefinedmermaid
flowchart TD
HOME --> ADD[+]
ADD --> METHOD1
ADD --> METHOD2
METHOD1 --> RESULT
RESULT --> SAVE --> HOMEundefinedREPORT.html
REPORT.html
html
<!DOCTYPE html>
<html>
<head>
<style>
:root{--primary:#1E3A5F;--accent:#4ECDC4;--bg:#F5F7FA}
body{font-family:system-ui;background:var(--bg);margin:0;padding:20px}
.container{max-width:1200px;margin:0 auto}
.card{background:#fff;border-radius:12px;padding:24px;margin:20px 0;box-shadow:0 2px 8px rgba(0,0,0,0.1)}
.gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:16px}
.gallery img{width:100%;border-radius:8px;border:1px solid #eee}
h1,h2{color:var(--primary)}
h2{border-bottom:2px solid var(--accent);padding-bottom:8px}
table{width:100%;border-collapse:collapse}
th,td{padding:12px;text-align:left;border-bottom:1px solid #eee}
th{background:var(--bg)}
</style>
</head>
<body>
<div class="container">
<h1>{APP} - Analisi Competitiva</h1>
<div class="card"><h2>Screenshots</h2>
<div class="gallery">
<img src="../img/{app}_01.png">
<img src="../img/{app}_02.png">
</div></div>
</div>
</body>
</html>html
<!DOCTYPE html>
<html>
<head>
<style>
:root{--primary:#1E3A5F;--accent:#4ECDC4;--bg:#F5F7FA}
body{font-family:system-ui;background:var(--bg);margin:0;padding:20px}
.container{max-width:1200px;margin:0 auto}
.card{background:#fff;border-radius:12px;padding:24px;margin:20px 0;box-shadow:0 2px 8px rgba(0,0,0,0.1)}
.gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:16px}
.gallery img{width:100%;border-radius:8px;border:1px solid #eee}
h1,h2{color:var(--primary)}
h2{border-bottom:2px solid var(--accent);padding-bottom:8px}
table{width:100%;border-collapse:collapse}
th,td{padding:12px;text-align:left;border-bottom:1px solid #eee}
th{background:var(--bg)}
</style>
</head>
<body>
<div class="container">
<h1>{APP} - 竞品分析</h1>
<div class="card"><h2>截图</h2>
<div class="gallery">
<img src="../img/{app}_01.png">
<img src="../img/{app}_02.png">
</div></div>
</div>
</body>
</html>Checklist
检查清单
- Onboarding completo
- Tutti i tab esplorati
- Settings catturati
- Paywall documentato
- Input methods testati
- User flows creati
- Design tokens estratti
- Psicologia analizzata
- Business model mappato
- Raccomandazioni scritte
- ZIP creato
- 完成引导流程分析
- 探索所有标签页
- 捕获设置页面
- 记录付费墙信息
- 测试输入方式
- 创建用户流程
- 提取设计令牌
- 分析心理学应用
- 梳理商业模式
- 撰写建议
- 创建ZIP压缩包
Troubleshooting
故障排除
bash
undefinedbash
undefinedNo device
无设备连接
adb kill-server && adb start-server && adb devices
adb kill-server && adb start-server && adb devices
UI dump fail
UI导出失败
adb shell uiautomator dump /data/local/tmp/ui.xml
adb shell cat /data/local/tmp/ui.xml
adb shell uiautomator dump /data/local/tmp/ui.xml
adb shell cat /data/local/tmp/ui.xml
Screenshot nero
截图黑屏
adb shell screencap -p /sdcard/s.png && adb pull /sdcard/s.png
adb shell screencap -p /sdcard/s.png && adb pull /sdcard/s.png
Tap non funziona
点击无效
→ Ricalcola coordinate da UI dump fresco
→ 根据最新的UI导出重新计算坐标
→ Verifica clickable="true"
→ 检查clickable="true"属性
→ Aggiungi sleep 1 prima
→ 之前添加sleep 1延迟
undefinedundefinedPowerShell Helpers
PowerShell辅助脚本
powershell
$ADB="D:\Software\Android\Sdk\platform-tools\adb.exe"
function ss($p){& $ADB exec-out screencap -p|Set-Content $p -Enc Byte}
function ui{& $ADB shell uiautomator dump /sdcard/ui.xml;& $ADB shell cat /sdcard/ui.xml}
function tap($x,$y){& $ADB shell input tap $x $y}
function sd{& $ADB shell input swipe 540 1500 540 500 300}
function su{& $ADB shell input swipe 540 500 540 1500 300}
function bk{& $ADB shell input keyevent 4}powershell
$ADB="D:\Software\Android\Sdk\platform-tools\adb.exe"
function ss($p){& $ADB exec-out screencap -p|Set-Content $p -Enc Byte}
function ui{& $ADB shell uiautomator dump /sdcard/ui.xml;& $ADB shell cat /sdcard/ui.xml}
function tap($x,$y){& $ADB shell input tap $x $y}
function sd{& $ADB shell input swipe 540 1500 540 500 300}
function su{& $ADB shell input swipe 540 500 540 1500 300}
function bk{& $ADB shell input keyevent 4}Example
示例
User: Analizza Yazio
Agent:
1. adb devices → emulator-5554 ✓
2. ss "yazio_01.png" → splash
3. ui → "Get Started" [100,1800][980,1900]
4. tap 540 1850
5. ss "yazio_02.png" → goal selection
... [50+ screens] ...
6. Genera YAZIO_ANALYSIS.md
7. Genera YAZIO_REPORT.html
8. Genera YAZIO_USER_FLOWS.md
9. ZIP → Desktop用户: 分析Yazio
助手执行步骤:
1. adb devices → emulator-5554 ✓
2. ss "yazio_01.png" → 启动页
3. ui → "Get Started" [100,1800][980,1900]
4. tap 540 1850
5. ss "yazio_02.png" → 目标选择页
... [50+个屏幕] ...
6. 生成YAZIO_ANALYSIS.md
7. 生成YAZIO_REPORT.html
8. 生成YAZIO_USER_FLOWS.md
9. 压缩为ZIP包 → 保存至桌面