2010-08-10 29 views
6

由于最近Apple改变了iTunes Connect界面,人们被要求使用Application Loader上传应用程序。iTunes应用程序加载器 - 自动化

这很好,但我需要一个脚本来自动化我的工作。

像App Loader这样的应用程序如何实现自动化?

我在想用AppleScript编写的东西......但我不知道它公开了什么动作(如果有的话)。发现我可以在AppleScript中做GUI脚本的地方,但是我找不到那些文档。

我需要什么...触发输入操作(鼠标点击/键盘输入)的某种方式,并从显示的各种控件中读取文本。

如果在Python/Ruby中这是可能的,这将是很好的,但AppleScript很好。

OS X是版本10.6.4。

任何建议表示赞赏。

感谢,

回答

16

应用程序加载器文档提到了可用于此目的的altool。 (https://itunesconnect.apple.com/docs/UsingApplicationLoader.pdf

相关信息:

您可以使用altool,应用程序加载器对 验证和上传您的应用程序二进制文件的应用程序商店 命令行工具。

上传之前验证您的构建或自动化的有效 构建上传到App Store,您可以在您的持续 集成系统altool。altool位于应用程序 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应用内-f文件-u用户名[-p密码] [--output格式的XML]

$ altool --upload- app -f文件-u用户名[-p 密码] [--output-format xml]

其中:

--validate-app指定您要验证指定的应用程序。

--upload-app指定您要上传指定的应用程序。指定您正在验证或上传的应用程序的路径和文件名。 -f文件

-u用户名指定您的用户名。

-p password指定您的用户密码。

--output-format [xml |正常]指定您希望Application Loader以结构化XML格式或非结构化文本格式返回输出。默认情况下,Application Loader以文本格式返回输出信息。

+0

对不起,我知道这是一个老问题,但它仍然出现在Google中,我很乐意提供这些新信息。 – 2015-06-04 19:11:38

+0

乍得,谢谢你加入它。我转向其他方面,当时我最终使用Cocoa脚本自动化应用程序加载器,因为CLI界面不可用。很高兴现在有一个命令行界面。欢呼声, – 2015-06-15 08:54:56

+0

感谢您发布'altool'的完整路径。 – 2016-11-13 19:49:52

2

为了看看AppleScript命令的任何应用程序支持,那么你需要看看词典应用。 From my answer to a similar question posted just the other day

要到应用程序的字典中的AppleScript的编辑器转到文件>打开字典....所有的应用程序的列表,该OS知道支持AppleScript的会出现,但操作系统不会全部抓住它们,以便使用浏览按钮。如果应用程序不支持Applescript,那么在对话窗口中将无法选择它。

需要注意的是应用程序应该支持某些命令,但不应该,或者应用程序可能只支持最低要求。这些都非常非常简单,像打开,退出等等。您的里程可能会有所不同。

以GUI脚本开头的信息can be found on the OS X Automation site。 GUI脚本是一种很时髦的方式,我不认为你可以获得屏幕控制的价值,而只是设置它们。如果没有其他途径,您应该只做这个。

如果你想坚持Python,那么你可以看看py-appscript project,但这仍然依赖于Applescript对应用程序的支持。

+0

感谢菲利普...... py-appscript的建议很有用。 不幸的是,该应用程序没有字典,所以我拥有UI脚本。 但我想我设法做到了。你可以用类似...的方式获取某个元素的值“获取第1行的文本字段1的值...”;这对错误报告很有用。 – 2010-08-10 16:28:12

+0

我对字典的缺乏并不感到惊讶。看起来,Applescript或多或少已经不受Apple的青睐。他们只在其更公开的旗舰应用中执行实现,即使如此,也可能会认为它们功能不完整。在这些情况下,GUI脚本确实是唯一的出路。我知道的一个真正的陷阱(除了语法和跟踪您正在操纵哪个控件)是无意识的警报和对话窗口可能(并且将会)导致脚本错误。祝你好运! – 2010-08-10 18:07:42

+0

是的,我已经有一些无意识的警报/对话框的问题。但为了尽量减少这种情况,当脚本启动时,我首先终止应用程序以摆脱以前的状态。如果无法正常终止(例如应用程序要求确认或其他情况),那么我会执行“kill -9”。从头开始每一个行动肯定在这方面有很多帮助。 – 2010-08-12 11:48:39