2013-05-24 3 views
1

touch events을 Android에서 다른 앱으로 시뮬레이션 할 수 있습니까? 아마도 SYSTEM_ALERT 속성의 서비스 또는 보이지 않는 활동을 사용하여 input touches을 수신 한 다음 애플리케이션의 투명한 활동 바로 아래에있는 다른 애플리케이션의 다른 활동으로 시뮬레이션하십시오. 이것이 가능한가?다른 애플리케이션의 활동에 대한 시뮬레이션

[업데이트]

계정으로 FoamyGuy의 답변을 복용, 그것은 특정 터치 이벤트를 필터링하는 눈에 보이지 않는 SYSTEM_ALERT 활동을 할 수 있습니까? 나는 당신이 그 활동에 대한 의견을 취소 할 수 있다는 것을 안다. 선택적 입력을 취소 할 수 있습니까? 아니면 여전히 맞춤 ROM을 만들어야합니까?

답변

1

예 그렇습니다, 당신은 INJECT_EVENTS 권한을 사용하는 모든 응용 프로그램에 이벤트를 삽입 할 수 있습니다

http://developer.android.com/reference/android/Manifest.permission.html#INJECT_EVENTS

+0

이 권한은 PlayStore에 게시 될 응용 프로그램에서 허용됩니까? –

+0

APK 서명이 장치의 시스템/플랫폼 서명과 일치해야하므로 허용되지는 않지만 대부분의 장치에서 작동하지 않습니다. 따라서 Play 스토어에 앱을 게시하는 것이 목표라면 그렇게 할 수 없습니다. 그러나 특정 장치에 대한 응용 프로그램을 만드는 경우이 기능이 작동합니다. – thiagolr

+0

그걸 정리하면 고마워요! –

1

불가능합니다. 이는 주요 보안 문제의 원인이됩니다. 계측 API를 사용하여 자신의 활동에 이벤트를 주입 할 수 있지만 자신이 아닌 활동에는 이벤트를 주입 할 수 없습니다.

이렇게 할 수 있다면 사용자 상호 작용을 통해 앱을 설치/제거하는 등의 일을 할 필요성을 피할 수 있습니다.

당신이 그것을 원한다면 당신이 그것을 가능하게하기 위해 자신의 장치에서 시스템을 수정해야 할 것입니다. 앱이 플랫폼 인증서로 서명 된 경우

+0

내가 질문을 업데이 트했습니다. –