gplay-metadata-sync
Metadata and localization sync (including Fastlane format) for Google Play Store listings. Use when updating app descriptions, screenshots, or managing multi-locale metadata.
摘要
- 用途
- 它可透过验证、比对、批量同步与个别编辑,协助维护 Google Play 商店文案、本地化中继数据及图片。
- 使用时机
- 当您要在 Fastlane 格式的目录中准备或查看各语系的商店信息与图片,或直接更新商店信息字段和屏幕截屏时使用。
- 输出结果
- 它可导出或导入各语系的商店信息文字与图片素材、验证文案长度限制,并显示本机与远程商店信息的差异。
上游变更(2 条,最新收录 2026-07-04)
439c9ae fix(skills): audit cleanup — correct every command, cut dead weight, add drift guardrail (#3) `listings update` 现在使用个别旗标(未提供的字段会清空),并将部分更新导向 `listings patch`;删除图片范例改用 `--image`,标题上限则由 50 字符降至 30 字符。 acb31df Initial commit: Google Play CLI Skills repository 此提交添加 `gplay-metadata-sync` 技能,说明 Fastlane 中继数据目录结构,以及导出、导入、验证、比较与手动管理 Play 商店信息、图片、应用程序详细数据和语系的流程。 npx skills add "lettucebo/Skills#v2.2.0@gplay-metadata-sync" --full-depth ⚠ v2.2.0 发布后即可使用
Metadata Sync for Google Play
Use this skill when you need to update or sync Play Store metadata and localizations.
Fastlane Directory Structure
fastlane/metadata/android/
├── en-US/
│ ├── title.txt
│ ├── short_description.txt
│ ├── full_description.txt
│ ├── video.txt
│ └── images/
│ ├── phoneScreenshots/
│ │ ├── 1.png
│ │ └── 2.png
│ ├── sevenInchScreenshots/
│ ├── tenInchScreenshots/
│ ├── tvScreenshots/
│ ├── wearScreenshots/
│ ├── icon.png
│ └── featureGraphic.png
├── es-ES/
│ ├── title.txt
│ └── ...
└── fr-FR/
└── ...
Export Metadata from Play Store
# Export all listings to Fastlane format
gplay sync export-listings \
--package com.example.app \
--dir ./fastlane/metadata/android
# Export images
gplay sync export-images \
--package com.example.app \
--dir ./fastlane/metadata/android
Import Metadata to Play Store
# Validate before importing (offline check)
gplay validate listing \
--dir ./fastlane/metadata/android \
--locale en-US
# Import all listings
gplay sync import-listings \
--package com.example.app \
--dir ./fastlane/metadata/android
# Import images
gplay sync import-images \
--package com.example.app \
--dir ./fastlane/metadata/android
Compare Local vs Remote
# See what would change
gplay sync diff-listings \
--package com.example.app \
--dir ./fastlane/metadata/android
Manual Metadata Management
List all listings
gplay listings list \
--package com.example.app \
--edit $EDIT_ID
Get specific locale
gplay listings get \
--package com.example.app \
--edit $EDIT_ID \
--locale en-US
Update listing
listings update sets all fields for a locale via individual flags (fields not
provided are cleared). Use listings patch for partial updates.
gplay listings update \
--package com.example.app \
--edit $EDIT_ID \
--locale en-US \
--title "My Awesome App" \
--short-description "A short description under 80 characters" \
--full-description "A full description under 4000 characters..." \
--video "https://www.youtube.com/watch?v=VIDEO_ID"
Image Management
Upload screenshots
gplay images upload \
--package com.example.app \
--edit $EDIT_ID \
--locale en-US \
--type phoneScreenshots \
--file screenshot1.png
gplay images upload \
--package com.example.app \
--edit $EDIT_ID \
--locale en-US \
--type phoneScreenshots \
--file screenshot2.png
Image types
phoneScreenshots- Phone screenshots (required)sevenInchScreenshots- 7" tablet screenshotstenInchScreenshots- 10" tablet screenshotstvScreenshots- TV screenshotswearScreenshots- Wear OS screenshotsicon- App iconfeatureGraphic- Feature graphic (1024x500)
List images
gplay images list \
--package com.example.app \
--edit $EDIT_ID \
--locale en-US \
--type phoneScreenshots
Delete image
gplay images delete \
--package com.example.app \
--edit $EDIT_ID \
--locale en-US \
--type phoneScreenshots \
--image IMAGE_ID \
--confirm
App Details
Get app details
gplay details get \
--package com.example.app \
--edit $EDIT_ID
Update contact info
gplay details update \
--package com.example.app \
--edit $EDIT_ID \
--contact-email support@example.com \
--contact-phone "+1234567890" \
--contact-website "https://example.com"
Character Limits
Validate against Google Play limits:
| Field | Limit |
|---|---|
| Title | 30 characters |
| Short Description | 80 characters |
| Full Description | 4000 characters |
# Validate before upload
gplay validate listing \
--dir ./fastlane/metadata/android \
--locale en-US
Workflow Example
Complete metadata update workflow:
# 1. Export current metadata
gplay sync export-listings \
--package com.example.app \
--dir ./metadata
# 2. Edit files locally
vi ./metadata/en-US/full_description.txt
# 3. Validate changes
gplay validate listing \
--dir ./metadata \
--locale en-US
# 4. See what will change
gplay sync diff-listings \
--package com.example.app \
--dir ./metadata
# 5. Import changes
gplay sync import-listings \
--package com.example.app \
--dir ./metadata
Multi-Locale Management
Create new locale
Copy existing locale directory:
cp -r fastlane/metadata/android/en-US fastlane/metadata/android/es-ESTranslate all text files
Import:
gplay sync import-listings \ --package com.example.app \ --dir ./fastlane/metadata/android
Supported Locales
Use Play Console locale codes:
en-US- English (United States)es-ES- Spanish (Spain)fr-FR- French (France)de-DE- German (Germany)ja-JP- Japanese (Japan)- etc.
Best Practices
- Keep metadata in version control - Track changes over time
- Validate before importing - Catch character limit errors
- Use consistent formatting - Follow style guide
- Test on different devices - Screenshots should represent actual app
- Update regularly - Keep descriptions current with features
- Localize properly - Don't use machine translation without review