2013-03-28 1 views
1

사용 패턴을 연구하기 위해 컴퓨터 앞의 사용자 동작에 대한 정보를 수집하는 응용 프로그램을 작성하고 있습니다. JNA를 조사했지만 Windows 이외의 플랫폼에서 활성 응용 프로그램을 캡처하는 방법에 대한 정보를 찾을 수 없습니다.OSX에서 Java를 사용하여 활성 애플리케이션 타이틀을 얻으려면 어떻게해야합니까?

  • OSX에서 활성 응용 프로그램을 캡처 할 수있는 라이브러리 (예 : JNativeHook)가 있습니까?

사용자 연구의 무결성 우려를 피하기 위해 활성 창 제목이 아닌 활성 응용 프로그램을 캡처하고 싶습니다. 또한 Java가 실제로 JVM 밖에서 작업하고 이런 종류의 작업을 수행하는 것은 아니라는 것을 알고 있습니다. 그러나 데이터베이스 상호 작용이 많고 제한된 시간이 있기 때문에 Java가 선택되고이 구성 요소를 제외하고 프로젝트가 완료됩니다.

+0

아마도 도움이 될 것입니다. http://stackoverflow.com/questions/480866/get-the-title-of-the-current-active-window-document-in-mac-os-x – whiskeyspider

답변

0

물론, "사용자 연구를위한"); 목표 - C에서)

, 당신은 같은 것을 할 것 : 나는 정확한 코드를 해제 할 수있다

NSWorkspace.sharedWorkspace().activeApplication()['NSApplicationName'] 

을, 나는 돈 지금 맥에 접근 할 수는 없지만 메모리/API에서 그렇게하고있다.하지만 나는 그것이 가까운 것이라고 생각한다. 중요한 출발점은 NSWorkspace입니다. 자, JNA를 사용하여 호출하는 방법에 대해, 나는 가장 안좋은 것을 가지고 있지 않습니다.

+0

감사합니다. 그걸 살펴보십시오. 응용 프로그램의 진정한 목적은 실제로이 연구 (http://www.csis.pace.edu/~ctappert/it691-11fall/projects/mouse-pusara.pdf)를 기반으로하는 생체 인식의 사용자 연구입니다. –

+0

JC의 C 호환 바인딩이 얻는 것 이상으로 Objective-C 지원이 필요한 경우 코코아 관련 비트를 제공하는 [rococoa] (http://code.google.com/p/rococoa/)를 참조 할 수도 있습니다. – technomage