9

最近、Apple が iTunes Connect インターフェイスを変更したため、ユーザーはアプリケーション ローダーを使用してアプリをアップロードする必要があります。

それはいいのですが、作業を自動化するためのスクリプトが必要です。

App Loader のようなアプリをどのように自動化できますか?

私は AppleScript で書かれたものを考えていました...しかし、それがどのようなアクションを公開するのか (もしあれば) わかりません。AppleScript内からGUIスクリプトも実行できる場所を見つけましたが、それに関するドキュメントが見つかりません。

必要なもの...入力アクション(マウスクリック/キーボード入力)をトリガーし、表示されたさまざまなコントロールからテキストを読み取る方法。

それが Python/Ruby で可能であれば素晴らしいことですが、AppleScript は問題ありません。

OS X はバージョン 10.6.4 です。

任意の提案をいただければ幸いです。

ありがとう、

4

3 に答える 3

19

Application Loader のドキュメントには、この目的に使用できる altool が記載されています。( https://itunesconnect.apple.com/docs/UsingApplicationLoader.pdf )

関連情報:

アプリケーション ローダーのコマンドライン ツールである altool を使用して、アプリケーションのバイナリ ファイルを検証し、App Store にアップロードできます。

アップロード前にビルドを検証するか、App Store への有効なビルドのアップロードを自動化するには、altool を継続的インテグレーション システムに含めることができます。altool は Application Loader.app/Contents/Frameworks/ITunesSoftwareService.framework/Versions/A/Support/ フォルダーにあります。(したがって、フル パスは /Applications/Xcode.app/Contents/Applications/Application\ Loader.app/Contents/Frameworks/ITunesSoftwareService.framework/Support/altool になります)

altool を実行するには、コマンドラインで次のいずれかを指定します。

$ altool --validate-app -f file -u ユーザー名 [-p パスワード] [--output-format xml]

$ altool --upload-app -f file -u ユーザー名 [-p パスワード] [--output-format xml]

どこ:

--validate-app 指定したアプリケーションを検証することを指定します。

--upload-app 指定したアプリケーションをアップロードすることを指定します。

-f file 検証またはアップロードするアプリケーションのパスとファイル名を指定します。

-u username ユーザー名 (Apple ID) を指定します。

-p password ユーザーのパスワードを指定します。

--出力形式 [xml | 通常] Application Loader が出力を構造化 XML 形式または非構造化テキスト形式で返すことを指定します。デフォルトでは、Application Loader は出力情報をテキスト形式で返します。

于 2015-06-04T19:10:58.567 に答える
2

アプリケーションがサポートする Applescript コマンドを確認するには、アプリケーションの Dictionary を参照する必要があります。先日投稿された同様の質問に対する私の回答から

Applescript エディターでアプリケーションの辞書にアクセスするには、[ファイル] > [辞書を開く...] に移動します。OS が Applescript をサポートしていると認識しているすべてのアプリケーションのリストが表示されますが、OS はそれらすべてをキャッチするわけではないので、参照ボタン。アプリケーションが Applescript をサポートしていない場合、そのアプリケーションはダイアログ ウィンドウで選択できません。

これに対する注意点は、アプリケーションがサポートするはずの特定のコマンドが存在すること、またはアプリケーションが最小要件のみをサポートしている可能性があることです。これらはすべて、open、quit などの非常に単純なものです。マイレージは異なる場合があります。

GUI スクリプトを開始するための情報は、OS X Automation サイト にあります。GUI スクリプティングは風変わりな方法であり、画面上のコントロールの値を取得することはできず、代わりに設定することしかできないと思います。他の手段が機能しない場合にのみ、これを行う必要があります。

Python に固執したい場合は、py-appscript プロジェクトを見ることができますが、これはまだアプリケーションの Applescript サポートに依存しています。

于 2010-08-10T15:01:46.993 に答える
2

これらのコマンドを 1 つずつ、または 1 つの bash スクリプトですべて使用して、AppStore Connect へのアーカイブ、抽出、およびアップロードのプロセスを実際に自動化できます。

記録

xcodebuild -workspace "${APP_NAME}.xcworkspace" -scheme "${APP_NAME}" clean archive -configuration release -sdk iphoneos -archivePath ".build/${TEMP_BUILD}.xcarchive"

IPAへの輸出

xcodebuild -exportArchive -archivePath  ".build/${TEMP_BUILD}.xcarchive" -exportOptionsPlist  "ExportOptions.plist" -exportPath  ".build/${TEMP_BUILD}.ipa"

IPA を TESTFLIGHT にアップロード

altool --upload-app -f ".build/${TEMP_BUILD}.ipa/${APP_NAME}.ipa" -u $APP_STORE_USERNAME -p $APP_STORE_PASSWORD

1) ExportOptions.plist ファイルが何であるかわからない場合は、こちらをご覧ください。

2)altoolターミナルのどこからでも使用するには、ターミナルに次のように入力して、PATH環境変数に追加できます。

MacBook-Pro:~ denis$ export PATH=$PATH:/Applications/Xcode.app/Contents/Applications/Application\ Loader.app/Contents/Frameworks/ITunesSoftwareService.framework/Support/
MacBook-Pro:~ denis$ source ~/.bash_profile
于 2019-02-14T13:22:48.907 に答える