2013-02-26 32 views
2

我基本上需要了解是否有辦法使用觸摸捕捉諸如「憤怒的小鳥」等遊戲的動作或擊鍵屏幕上的iPhone並將其保存到設備上的文件中。使用iphone的觸摸屏捕捉像(憤怒的小鳥)一樣的遊戲的動作或擊鍵

我敢肯定,這些手機有安全問題,不希望本機「按鍵記錄」,但如果它是坐落在其他遊戲中的一層,應該確定

請讓我有什麼實現相同的方式。您的幫助將不勝感激。在此先感謝

+0

我很懷疑你會被允許做攔截從任何應用程序的觸摸沒有一些嚴重的黑客攻擊事件。作爲一個商業應用程序,我擔心這是不可能的,但是在一個授予您權限的設備上,我認爲這完全有可能。您可以設置一個守護進程來監視Quartz事件循環。 – CodaFi 2013-02-26 08:04:05

+0

Hi @CodaFi 感謝您的即時回覆。 您可以詳細說明這個術語:「您可以設置一個守護進程來監視Quartz事件循環」。 ? – NSExpression 2013-02-26 08:35:21

回答

0

什麼你正在嘗試做的可以通過使用MobileSubstrate有,由傑伊·弗里曼創造了一個非常強大的框架,可以讓你在運行時修改任何進程的幾乎所有功能很容易實現的。 Dustin Howett的構建環境theos可以用來代替Xcode,它的Logos預處理器使得所有這些看似複雜的惡作劇成爲非常簡單的任務。

這樣的事情可以用很少量的代碼完成。

例子:

%hook UIApplication //Hooks into the UIApplication class. 

- (void)sendEvent:(id)arg1{//Hook the sendEvent function, the function which handles all events passed to a UIApplication. 

    if([arg1 isKindOfClass:%c(UITouchesEvent)]){//Make sure we're not processing other events, such as device rotation. 

    for(UITouch *touch in [arg1 allTouches]) 
     NSLog(@"Touch recorded: %@", NSStringFromCGPoint([touch locationInView: [[UIApplication sharedApplication] keyWindow]])); 

    } 

    %orig;//Call the original function, so the app can still process the events, and we don't eat them all. 

} 

正如你所看到的,它實際上是相當簡單的。

不幸的是,越獄設備是您唯一的選擇。顯然,你將無法在App Store中放置任何類似的東西。然而,Cydia已經成爲iOS的一個非常重要的部分,並且通過它的成功可以輕鬆實現,如果不是比App Store更容易實現的話。

相關問題