안녕하세요!
일반고 재학중인 흔한 고2 학생입니다!
제가 동공추적으로 스마트폰 위에 커서를 움직이게 하는 어플을 만들었습니다.
그런데 터치 이벤트를 인젝트 하려는 과정에서 문제가 발생했습니다!!
오유 여려분들도 잘 아시다시피 자신이 아닌 다른 앱에 강제로 터치이벤트를 주려면
시스템 퍼미션이 필요하다고 하였는데요,
이는 펌웨어 개발자만이 가질 수 있는 성역이라고 하더라구요 ㅠㅠ
그래서 제가 찾아본 방법이 2가지가 있는데요,
1. 제가 만든 앱에 루트 권한이 부여되었을 경우 리눅스 커널에 직접 코드를 입력하여 이벤트를 넣는다
2. 선생님 曰 : "다른 회사들처럼 안드로이드 OS 자체를 뜯어보지 그러니?"
2번은 좀 무리수 인거 같아서 1번을 하려고 해도
naitive, 즉 C 코드를 사용해야 하더라구요....
ndk 개발환경도 아직 구축되지 않은 상태라, 가능하면 자바로 끝낼 수 있기를 바랬던 찰나에,
시스템 앱의 텍스트를 건들 수 있는것을 보아하니, 이를 이용하면 제 터치이벤트 인젝팅의 꿈이 현실로 이뤄질 수 있을것 같습니다!!
그래서 질문드립니다!!
1. 시스템 앱을 조종하기 위해 위 글에서 취한 방법은 무엇인가요?
2. 위의 방법이 native로 리눅스 커널에 직접 입력하게 하는것 보다 투자 시간대비 효과적인가요??
답변해 주시면 정말 감사드리겠습니다!!!!