2014-02-10 10 views
0

이제 우리는 contextIdAtPosition 메서드를 사용하여 프론트 응용 프로그램의 컨텍스트 ID를 얻을 수 있지만 어떻게 컨텍스트 ID를 사용하여 프론트 응용 프로그램의 번들 식별자를 얻을 수 있습니까? 감사합니다!iOS 7 (Jailbroken)의 컨텍스트 ID 또는 Mach 포트별로 애플리케이션의 번들 식별자를 얻는 방법은 무엇입니까?

+0

@Surge : [objc_getClass ("CAWindowServer") serverIfRunning]에서 nil을 얻습니다. 어떻게 작동시킬 수 있었습니까? 수급권을 사용합니까? 나는 노력하고있는 jailbroken IOS 7 장치를 가지고있다. – Jailbroken

답변

1

가장 많이 사용하는 앱의 식별자 만 필요한 경우 SpringBoard 클래스를 확인해야합니다.

@interface SBApplication : NSObject 
-(NSString *)displayIdentifier; 
@end 

@interface SpringBoard : UIApplication 
-(SBApplication *)_accessibilityFrontMostApplication; 
@end 
+0

고맙습니다.'taskPortOfContextId' 메소드로'SpringBoard'의 태스크 포트를 어떻게 얻을 수 있습니까? – Suge

+0

당신이 무엇을하려고하는지 잘 모르겠습니다. 비틀기가'SpringBoard'에서 실행된다면'[UIApplication sharedApplication]'을 사용하여'SpringBoard'의 인스턴스를 얻을 수 있습니다. – Qusic

+0

'SpringBoard'의'task port'를 필요로하는'IOHIDSystemConnectionRef'를'SpringBoard'에 만들고 싶습니다. 원어민은'contextIdAtPosition'과'taskPortOfContextId'를 사용하여 가장 앞선 앱의'task port'를 얻을 수 있습니다. 우리는 홈 화면에 없을 때'SpringBoard'의'task port '를 얻습니다. – Suge