2010-08-10 30 views
6

Vì gần đây Apple đã thay đổi giao diện iTunes Connect và mọi người được yêu cầu tải lên ứng dụng bằng Trình tải ứng dụng.Trình tải ứng dụng iTunes - tự động hóa

Thật tuyệt, nhưng tôi cần một tập lệnh để tự động hóa công việc của mình.

Làm cách nào để một ứng dụng như Trình tải ứng dụng được tự động?

Tôi đã suy nghĩ về điều gì đó được viết bằng AppleScript ... nhưng tôi không biết hành động nào sẽ hiển thị (nếu có). Tìm thấy một nơi nào đó mà tôi cũng có thể làm GUI scripting từ bên trong AppleScript, nhưng tôi không thể tìm thấy tài liệu về điều đó.

Điều tôi cần ... một số cách để kích hoạt hành động nhập (nhấp chuột/bàn phím nhập) và đọc văn bản từ các điều khiển khác nhau được hiển thị.

Nếu điều đó có thể thực hiện được trong Python/Ruby, nó sẽ rất tuyệt, nhưng AppleScript vẫn ổn.

OS X là phiên bản 10.6.4.

Mọi đề xuất đều được đánh giá cao.

Xin cảm ơn,

Trả lời

16

Tài liệu Trình tải ứng dụng đề cập đến một thiết bị có thể được sử dụng cho mục đích này. (https://itunesconnect.apple.com/docs/UsingApplicationLoader.pdf)

Các thông tin liên quan:

Bạn có thể sử dụng altool, công cụ dòng lệnh Application Loader cho xác nhận và tải ứng dụng của bạn tập tin nhị phân để App Store.

Để xác thực bản dựng của bạn trước khi tải lên hoặc để tự động tải lên hợp lệ xây dựng lên App Store, bạn có thể bao gồm công cụ thay thế trong hệ thống tích hợp liên tục của mình.altool nằm trong thư mục Application Loader.app/Contents/Frameworks/ITunesSoftwareService.framework/Versions/A/Support/ . (Vì vậy, đường dẫn đầy đủ sẽ /Applications/Xcode.app/Contents/Applications/Application \ Loader.app/Contents/Frameworks/ITunesSoftwareService.framework/Support/altool)

Để chạy altool, chỉ định một trong những cách sau tại dòng lệnh:

$ altool --validate ứng dụng -f tập tin -u username [-p password] [--output định dạng xml]

$ altool --upload- app -f file -u username [-p mật khẩu] [--output-format xml]

Địa điểm:

--validate-app Chỉ định bạn muốn xác thực ứng dụng được chỉ định.

--upload-app Chỉ định bạn muốn tải lên ứng dụng được chỉ định. Specifiesthe đường dẫn và tên tệp cho ứng dụng bạn đang xác thực hoặc tải lên. -f tệp

-u tên người dùng Chỉ định tên người dùng của bạn.

mật khẩu -p Chỉ định mật khẩu người dùng của bạn.

- định dạng đầu ra [xml | bình thường] Chỉ định rằng bạn muốn Trình tải ứng dụng trả về kết quả ở định dạng XML có cấu trúc hoặc định dạng văn bản không có cấu trúc định dạng . Theo mặc định, Trình tải ứng dụng trả về thông tin đầu ra ở định dạng văn bản.

+0

Xin lỗi, tôi biết đây là một câu hỏi cũ, nhưng nó vẫn xuất hiện trong Google và tôi rất thích thông tin mới này. –

+0

Chad, cảm ơn vì đã thêm vào nó. Tôi chuyển sang những thứ khác và vào thời điểm đó, tôi đã tự động kết thúc trình tải ứng dụng với kịch bản lệnh Cocoa, vì giao diện CLI không có sẵn. Vui mừng vì bây giờ có giao diện dòng lệnh. Chúc mừng, –

+0

Cảm ơn bạn đã đăng đường dẫn đầy đủ của 'altool'. –

2

Để xem những gì Applescript lệnh bất kỳ ứng dụng nào hỗ trợ, thì bạn cần xem từ điển cho ứng dụng. From my answer to a similar question posted just the other day:

Để truy cập từ điển của ứng dụng, hãy chuyển tới Tệp> Mở từ điển .... Danh sách tất cả ứng dụng mà hệ điều hành biết hỗ trợ Bản ghi sẽ xuất hiện, nhưng hệ điều hành sẽ không bắt tất cả để bạn có thể sử dụng nút Duyệt qua. Nếu một ứng dụng không hỗ trợ Applescript, thì nó sẽ không được chọn trong cửa sổ hộp thoại.

Thông báo trước cho điều này là có một số lệnh nhất định mà ứng dụng phải hỗ trợ nhưng không, hoặc ứng dụng chỉ có thể hỗ trợ các yêu cầu tối thiểu. Đây là tất cả rất, rất đơn giản như mở, bỏ thuốc lá, vv mileage của bạn có thể khác nhau.

Thông tin bắt đầu bằng GUI script can be found on the OS X Automation site. GUI Scripting là một cách thú vị để đi, và tôi không nghĩ rằng bạn có thể nhận được các giá trị của điều khiển trên màn hình, thay vào đó chỉ thiết lập chúng. Bạn chỉ nên làm điều này nếu không có đại lộ nào khác hoạt động.

Nếu bạn muốn gắn bó với Python, bạn có thể xem py-appscript project, nhưng điều này vẫn phụ thuộc vào sự hỗ trợ của Applescript của ứng dụng.

+0

Cảm ơn Philip ... đề xuất py-appscript đó hữu ích. Rất tiếc, ứng dụng không có từ điển, do đó, việc tạo kịch bản giao diện người dùng là tất cả những gì tôi có. Tuy nhiên, tôi nghĩ mình đã làm được. Bạn có thể nhận được giá trị của một số phần tử với một cái gì đó như ... "nhận giá trị của trường văn bản 1 của hàng 1 ..."; và điều này rất hữu ích cho việc báo cáo lỗi. –

+0

Tôi không ngạc nhiên vì thiếu từ điển. Applescript có, nhiều hơn hoặc ít hơn, rơi ra khỏi lợi với Apple, có vẻ như. Họ chỉ thực hiện các triển khai trong các ứng dụng hàng đầu công khai hơn, và thậm chí sau đó có thể lập luận rằng chúng là tính năng chưa hoàn chỉnh. Trong những trường hợp đó, GUI scripting thực sự là cách duy nhất để thực hiện. Một trong những pitfall thực sự mà tôi biết (khác với cú pháp và theo dõi kiểm soát mà bạn đang thao tác) là cảnh báo không mong muốn và cửa sổ hộp thoại có thể (và sẽ) gây ra kịch bản để lỗi ra. Chúc may mắn! –

+0

Vâng, tôi đã có một số vấn đề với hộp cảnh báo/hộp thoại không mong muốn. Nhưng để giảm thiểu các trường hợp như vậy, khi kịch bản bắt đầu, trước tiên tôi chấm dứt ứng dụng để loại bỏ trạng thái trước đó. Nếu nó không thể được chấm dứt bình thường (như trong trường hợp ứng dụng yêu cầu xác nhận hoặc một cái gì đó) Tôi sau đó làm một "kill -9". Bắt đầu từ đầu trên mỗi hành động chắc chắn sẽ giúp rất nhiều trong vấn đề đó. –

Các vấn đề liên quan