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