10/25追記: Application Loaderの後継となる公式アプリとして、TransporterがMac App Storeに公開されました。
apps.apple.comこれで安泰ですね。
Xcode 11がMac App Storeからもダウンロードできるようになりました。既にアップデートした方もいるかと思います。
さて、世の中にはXcode本体を使わずにApp Store Connectにipaファイルをアップロードする方法を何とかして見つけないといけない、ちょっと辛い状況を抱えた人々が存在します。Xcodeでのアップロードが上手くいかなかったり、サードパーティの開発ツールからipaファイルを直接与えられてしまったりと、事情は様々ですが、そういった人たちはこれまで、Application Loaderを使うのが一般的でした。
しかし、残念なことに、Xcode 11にはApplication Loaderが同梱されないことが、Appleからアナウンスされました。
私たちはどうすればよいのでしょうか。
幸いにも、コマンドラインからデプロイする方法が従来から用意されています。
altool
というコマンドを使えばいいようです。直接叩いた場合には動作しませんでしたが、 xcrun altool
という形であれば実行することができました。
$ xcrun altool Copyright (c) 2009-2019, Apple Inc. Version 4.00.1181 Usage: altool --validate-app -f <file> -t <platform> -u <username> {[-p <password>] | --apiKey <api_key> --apiIssuer <issuer_id>} altool --upload-app -f <file> -t <platform> -u <username> {[-p <password>] | --apiKey <api_key> --apiIssuer <issuer_id>} altool --notarize-app -f <file> --primary-bundle-id <bundle_id> -u <username> {[-p <password>] | --apiKey <api_key> --apiIssuer <issuer_id>} [--asc-provider <provider_shortname>] altool --notarization-info <uuid> -u <username> {[-p <password>] | --apiKey <api_key> --apiIssuer <issuer_id>} altool --notarization-history <page> -u <username> {[-p <password>] | --apiKey <api_key> --apiIssuer <issuer_id>} [--asc-provider <provider_shortname>] altool --list-apps -u <username> {[-p <password>] | --apiKey <api_key> --apiIssuer <issuer_id>} altool --store-password-in-keychain-item <name_for_keychain_item> -u <username> -p <password>
従来、Application Loaderで実施していたアップロード作業に相当する機能を持っているのは、次のコマンドです。
$ xcrun altool --upload-app -f <ファイル名> -t ios -u <username> -p <password> $ xcrun altool --upload-app -f <ファイル名> -t ios -u <username> --apiKey <api_key> --apiIssuer <issuer_id>
試しに、パスワードを使うほうを動かしてみましたが、問題なくApp Store Connectにipaファイルをアップロードすることができました。
ひとまず、これで生きていくことができそうです。 fastlane deliver を使えばいいような気がするのですが、まあ公式ツールを直接使うに越したことはないでしょう。