gplay-screenshot-automation について
gplay-screenshot-automationは、Google Playの掲載情報向けにAndroidのスクリーンショットや画像を整理、検証、アップロードするスキルです。画像の撮影ではなく、gplayによる画像管理フローを扱います。
主な機能
- 01画像の枚数・寸法・形式の検証
- 02Fastlane形式のディレクトリから一括インポート
- 03画像単体またはリリースと合わせてアップロード
- 04言語別画像の置き換えと一覧表示
活用シーン
- 01Google Playへのアップロード前の画像検査
- 02ローカライズ画像の一括インポート
- 03アプリバンドルと合わせた画像のアップロード
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ tamtom/ gplay-cli-skills --skill gplay-screenshot-automationインストール後、Claude Code で/gplay-screenshot-automationを入力して読み込まれたか確認します。
詳細
Google Play のスクリーンショット管理
このスキルを使用して、gplay で Android のスクリーンショットやストア用画像を整理、検証し、Google Play のストア掲載情報にアップロードします。このスキルでは、gplay 固有のアップロード/検証フローを扱います。スクリーンショットの撮影は対象外です。
元画像の撮影には、gplay 固有ではない標準的な Android ツールを使用します。adb shell screencap(その後 adb pull)で撮影するか、Espresso/UI Automator のインストルメンテーションテストで状態に応じた撮影を行います。言語ごとのスクリーンショットが必要な場合は、setprop persist.sys.locale でエミュレーターのロケールを切り替えます。PNG をロケールとデバイスの種類ごとに整理してから、以下のコマンドを使用します。
ディレクトリ構成
gplay は Fastlane 形式のディレクトリツリーを想定しています。sync import-images と release --screenshots-dir はどちらも、この構成を読み込みます。
metadata/
en-US/
images/
phoneScreenshots/
1_home.png
2_search.png
tenInchScreenshots/
1_home.png
featureGraphic.png
de-DE/
images/
phoneScreenshots/
1_home.png
スクリーンショットはファイル名順にアップロードされるため、ストアでの表示順を指定するには、1_、2_ などのプレフィックスを付けます。
画像の種類
| 種類 | 用途 |
|---|---|
phoneScreenshots | スマートフォンのスクリーンショット(必須、2~8 枚) |
sevenInchScreenshots | 7 インチタブレットのスクリーンショット |
tenInchScreenshots | 10 インチタブレットのスクリーンショット |
tvScreenshots | Android TV のスクリーンショット |
wearScreenshots | Wear OS のスクリーンショット |
featureGraphic | フィーチャーグラフィック(1024x500) |
promoGraphic | プロモーショングラフィック(180x120) |
icon | アプリアイコン(512x512) |
tvBanner | TV バナー(1280x720) |
Google Play で使用できる画像形式は PNG または JPEG です(PNG を推奨)。画像 1 枚あたりの上限は 8 MB です。
1) アップロード前の検証
アップロードに時間をかける前に、必ず最初にディレクトリを検証してください。枚数、サイズ、形式の問題を検出できます。
# Validate all locales
gplay validate screenshots --dir ./metadata --output table
# Validate a single locale
gplay validate screenshots --dir ./metadata --locale en-US --output table
2) アップロード
オプション A — 一括インポート(推奨)
Fastlane ツリー内のすべての画像を、1 つのコマンドでインポートします。オープンな編集が必要です。
EDIT_ID=$(gplay edits create --package com.example.app | jq -r '.id')
gplay sync import-images \
--package com.example.app \
--edit "$EDIT_ID" \
--dir ./metadata # add --locale en-US to import one locale, --dry-run to preview
gplay edits validate --package com.example.app --edit "$EDIT_ID"
gplay edits commit --package com.example.app --edit "$EDIT_ID"
オプション B — 個別の画像
特定のファイルを細かく制御する必要がある場合に使用します。
EDIT_ID=$(gplay edits create --package com.example.app | jq -r '.id')
gplay images upload \
--package com.example.app \
--edit "$EDIT_ID" \
--locale en-US \
--type phoneScreenshots \
--file ./metadata/en-US/images/phoneScreenshots/1_home.png
gplay images upload \
--package com.example.app \
--edit "$EDIT_ID" \
--locale en-US \
--type featureGraphic \
--file ./metadata/en-US/images/featureGraphic.png
gplay edits validate --package com.example.app --edit "$EDIT_ID"
gplay edits commit --package com.example.app --edit "$EDIT_ID"
オプション C — リリースの一部としてアップロード
1 回のリリースフローで、アプリバンドルと同時にスクリーンショットをアップロードします。
gplay release \
--package com.example.app \
--track production \
--bundle app-release.aab \
--screenshots-dir ./metadata \
--release-notes @release-notes.json
3) 既存のスクリーンショットを置き換える
delete-all は、再アップロードの前に指定したロケールの画像タイプをすべて削除します。--confirm の既定値は false で、指定しないと実行を拒否するため、--confirm は必須です。
EDIT_ID=$(gplay edits create --package com.example.app | jq -r '.id')
gplay images delete-all \
--package com.example.app \
--edit "$EDIT_ID" \
--locale en-US \
--type phoneScreenshots \
--confirm
gplay images upload \
--package com.example.app \
--edit "$EDIT_ID" \
--locale en-US \
--type phoneScreenshots \
--file ./metadata/en-US/images/phoneScreenshots/1_home.png
gplay edits validate --package com.example.app --edit "$EDIT_ID"
gplay edits commit --package com.example.app --edit "$EDIT_ID"
4) 公開中の内容を確認する
gplay images list \
--package com.example.app \
--edit "$EDIT_ID" \
--locale en-US \
--type phoneScreenshots \
--output table
エージェントの動作
- コマンドを実行する前に、
--helpで正確なフラグを確認します。 - アップロード前に必ず
gplay validate screenshotsを実行します。 - 個別の
gplay images upload呼び出しを何度も行うより、gplay sync import-imagesを優先します。 - 書き込み操作はすべて編集を経由します。作成 → アップロード/インポート → 検証 → コミットの順に進めます。
images delete-allには--confirmが必要です。指定しない場合、コマンドは実行を拒否します。- 明示的なロングフラグ(
--package、--edit、--locale、--type、--file)を使用します。 - 機械処理には JSON、人による確認には
--output tableを既定で使用します。