環境

  • Xcode 8.3.2
  • Fastlane 2.45.0

前提条件

  • bundlerを使用してfastlaneをインストール

セットアップ

まずは以下のコマンドを実行して環境を整えます

bundle exec fastlane deliver init

Appfileに記述されているアカウント情報を確認しているようです。
確認出来ない場合は入力を促されると思います

確認される項目
  • AppleId (メールアドレス)
  • password (一度入力するとkeychainに保存される)
  • Bundle Identifier

また、確認されたBundle Identifierを使用して作成したストアページがない場合はエラーが出ます 。なので作ってない場合は先に作りましょう。

初期化後のディレクトリ構造の例
fastlane/  
┣ AppFile  
    ┣ DeliverFile   
    ┣ FastFile 
    ┣ metadata
        ┣ copyright.txt
        ┣ en-US
             ┣ description.txt
             ┣ keywords.txt
             ┣ marketing_url.txt
             ┣ name.txt
             ┣ privacy_url.txt
             ┣ promotional_text.txt
             ┣ release_notes.txt
             ┣ subtitle.txt
             ┣ support_url.txt
        ┣ ja
             ┣ description.txt
             ┣ keywords.txt
             ┣ marketing_url.txt
             ┣ name.txt
             ┣ privacy_url.txt
             ┣ promotional_text.txt
             ┣ release_notes.txt
             ┣ subtitle.txt
             ┣ support_url.txt
        ┣ primary_category.txt
        ┣ primary_first_sub_category.txt
        ┣ primary_second_sub_category.txt
        ┣ review_information
             ┣ demo_password.txt
             ┣ demo_user.txt
             ┣ email_address.txt
             ┣ first_name.txt
             ┣ last_name.txt
             ┣ notes.txt
             ┣ phone_number.txt
        ┣ secondary_category.txt
        ┣ secondary_first_sub_category.txt
        ┣ secondary_second_sub_category.txt
        ┣ trade_representative_contact_information
             ┣ address_line1.txt
             ┣ address_line2.txt
             ┣ city_name.txt
             ┣ country.txt
             ┣ email_address.txt
             ┣ first_name.txt
             ┣ is_displayed_on_app_store.txt
             ┣ last_name.txt
             ┣ phone_number.txt
             ┣ postal_code.txt
             ┣ state.txt
             ┣ trade_name.txt
    ┣ screenshots
          ┣ en-US
              ┣ xxxxx.png 
          ┣ README.txt

今のストアの状態をそのまま取ってきてくれるみたいなので、後から導入するのも楽そうです。

DeliverFile

DeliverFileに変更したい項目を記載してコマンドを叩きます。

DeliverFileの例
# リリースノート
release_notes({
  en-US => "Try the new version",
  ja => "新しいバージョンをお試し下さい"
})

# アプリの説明
description({
  en-US => "English Description
English Description
English Description
",
  ja => "日本語の説明文
日本語の説明文
日本語の説明文
"
})

# キーワード
keywords(
  en-US => "Keyword1,Keyword2",
   ja => "キーワード1,キーワード2"
)

# HTMLで内容確認を行わない場合true
# デフォルトは `false`なので内容確認のHTMLが表示されます
# force true

こんな感じで変更したい項目を記述していきます。
まぁ後から入れた場合はほぼほぼrelease_notesだけになると思いますが。。
変更したくない項目は記載しなければ大丈夫です。

以下のコマンドでDeliverFileの内容でitunesConnectを更新します。

bundle exec fastlane deliver

現在のitunesConnectの情報にmetadata配下を更新したい場合は以下のコマンドを実行します。 itunesConnectを更新したあと実行するといいと思います。

bundle exec fastlane deliver download_metadata

スクリーンショット

f:id:y-hryk:20170710113858p:plain

上記のようにscreenshots配下におきます。

アップロードのルール
  • 並び順はフォルダ内の順番と同じ
  • サイズは自動判定されて適切な場所にアップロードされる (5.5インチとか4.7インチとかの話です)

名前の付け方で上手く運用できそう。