2010-09-23 57 views
2

我正在開發一個iOS應用程序。我在模擬器中花了很多時間,如果不必切換回Xcode來訪問調試器的進/出/結束/繼續控制,這將非常有用。有沒有辦法做到這一點,而沒有Xcode作爲焦點的應用程序?你如何通過Applescript進/出/通過Xcode調試器?

(我知道的迷你調試器,但是,這並不會對它步驟控制,並且我也希望鍵盤快捷鍵。)

我想這可能是編寫腳本,但它似乎並不像在Xcode AppleScript詞典中有一個鉤子。 (儘管如此,我絕對不是AppleScript專家)

我不認爲GUI腳本會讓我得到我想要的,因爲它會切換到Xcode步驟並切換回來。但如果速度足夠快,可能會比沒有好。

有沒有辦法將鍵盤命令發送到沒有焦點的應用程序?

還有其他想法嗎?

+0

我很肯定,即使通過Applescript使用UI界面腳本(如果您想要的控件可以在Xcode中訪問),它也會在您的應用程序和Xcode之間切換,這要歸功於「tell application Xcode」調用。 – tjk 2010-09-23 23:11:25

+0

查看Applescript中的系統事件字典 - 我認爲它允許可能對您有幫助的按鍵編程。 – tjk 2010-09-23 23:12:23

+0

添加關鍵字'activate'會導致'tell'塊的目標應用程序被帶到最前面,否則儘管發送了命令,但順序仍然是相同的。不過,我不知道,如果這種行爲在UI腳本的情況下是相同的。 – 2010-09-24 09:55:53

回答

0

它似乎並不像你可以做到這一點,而無需使用用戶界面腳本,我儘量避免。 (不過,如果你想這樣做,請參閱Clark的答案)。這似乎是Xcode 3和Xcode 4.3.1的情況。

0

要查看Xcode的腳本支持,請啓動腳本編輯器,找到Open Dictionary命令,然後選擇Xcode。

+0

我在原始文章中提到過,我檢查了字典並找不到任何有關逐步調試的信息,但是無論如何感謝。 – zekel 2010-09-24 15:46:49

0

正如其他人提到的使用UI腳本。因此,通過代碼一步調試器你會使用這AppleScript的:

​​

而這Appscript:

app(u'Xcode').activate() 
app(u'System Events').keystroke(u'i', using=[k.command_down, k.shift_down]) 
+0

不幸的是,這不會讓我留在模擬器沒有切換回來,等我希望有一個更支持的方式來做到這一點。不過謝謝你的建議。 – zekel 2012-04-11 18:05:39