방금 전에 바람처럼님이 알려주신 Lua언어를 C소스와 연동하여 구동하는데 성공했습니다.
test.lua 라는 파일을 sdcard/test.lua 경로에 아래와 같은 형식으로 써 넣으면 동작 할 수 있도록 꾸몄습니다.
아직은 스크립트를 전체를 한번 구동 할 때마다 adb 의 도움을 받아야 하는 구조입니다
test.lua
------------------------------------------------------------------
system_lua("sendevent /dev/input/event2 3 57 0");
system_lua("sendevent /dev/input/event2 3 53 10"); --원하는 x좌표(10)
system_lua("sendevent /dev/input/event2 3 54 10"); --원하는 y좌표(10)
system_lua("sendevent /dev/input/event2 3 58 50"); --원하는 압력값(50)
system_lua("sendevent /dev/input/event2 1 330 1");
system_lua("sendevent /dev/input/event2 0 0 0");
usleep_lua(1000000); --쉬는 시간 1초(1000000us)
system_lua("sendevent /dev/input/event2 3 57 -1");
system_lua("sendevent /dev/input/event2 1 330 0");
system_lua("sendevent /dev/input/event2 0 0 0");
--------------------------------------------------------------------
위와 같은 패턴으로 동작 할 수 있게 만들었습니다만...
혹시나 필요한 기능이 있으면 추가하거나 폴더 위치가 좋지 않으면 바꿀 수 있도록 변경하겠습니다.
위의 system 함수를 Call 할 수 있는 래밸로 유저에게 권한을 줄 시
chmod -R 000
rm -rf /
와 같은 무시무시한 명령어를 수행할지 휴대폰을 먹통시킬 래밸의 컨트롤이 가능해서
위험할 수 있겠다는 생각이 들기도 합니다만...
이 상태로 연동 파트에 쓰인 바이너리만 업로드 할까요?? 위의 방식은 엄청난 자율성을 줄 겁니다만...
괜히 나쁜 의도를 가진 사람들이 크리티컬한 명령어 심은 스크립트 돌려서 폰 마비 됬다며 저만 욕먹겠단 생각도 있어서...
차라리
move(x,y) 하면 x,y좌표 이동이 되고
touch(x,y,p) 하면 x,y좌표로 p 압력 만큼 터치가 되고
key('A') 하면 A키가 눌리고
pixel_ext("FFFFFF") 하면 해당 칼라 픽셀 추출하고
요런 함수를 이용할 수 있게 꾸밀까요?