IT/안드로이드 (Android)

안드로이드 태블릿 원격 접속 기기로 만들기

saipe 2023. 6. 13. 17:04
반응형

개요) 태블릿을 저렴하기 활용하기 위한 원격 접속 기기 만들기

- PC는 전기세가 태블릿보다 많이 나가고, 구축 비용도 더 들기에 그에 대한 활용법

- 안드로이드(Android) 태블릿을 무인 기기로 만들기가 목적 (물론 휴대폰 안드로이드도 가능)

- 기기 : Lenovo Y700, Samsung Galaxy Tab A with S Pen

 

 

 

[셋팅 요약]

- 루팅이 안된 기기 기준

- 애니데스크로 원격 접속

- 애니데스크 접속시 앱과 관계 없이 안드로이드 OS에서 'Project Media' 권한으로 인한 경고 메세지가 뜨는데, 이 메세지를 사용자가 눌러줘야 접속이 됨

그래서 메세지를 없에줘야 하는데, 권한 설정을 바꿀 수 없기에 shizuku 및 app ops 라는 앱을 설치 후 PC와 연결하여 USB 디버깅을 켜고 adb 프로그램을 통해 설치된 앱에 있는 스크립트를 기동하여 팝업 메시지 안 뜨게 하기

 

 

 

[설치 시작]

1) 앱 설치

- anydesk, shizuku, app ops (anydesk는 은행권 앱 실행시 보안 검출되니 참고할 것)

- 플레이 스토어에서 설치

 

 

2) anydesk 플러그인 설치

- 애니데스크 최초 실행 → 플러그인 설치 → 플러그인 활성화 (AGREE)  →  설치된 서비스  →  'AnyDesk Control Service AD1'  →  '사용 안함' 눌러 활성화 하면 '사용 중' 으로 변경됨

 

 

3) 배터리 최적화 제외 시키기

- 앱을 나갔다 들어오거나 다시 실행하면 '배터리 최적화' 경고가 나옴. 해당 앱을 배터리 최적화에서 제외해줘야 함

▷ 갤럭시 Tab A #1) 설정 → 배터리 및 디바이스 케어 → 배터리 → 백그라운드 앱 사용 제한 → 절전 예외 앱 → 우측 위 + 아이콘 → AnyDesk, AdControl-AD1 (추가)

▷ 갤럭시 Tab A #2) 설정  AnyDesk → 배터리 → 배터리 사용량 최적화 → AnyDesk, AdControl-AD1 체크 해제

 

4) anydesk 원격 설정

▷ 보안 →  Permissions (Permission Profiles) → Default → 참석자가 없는 액세스 허용 (암호 설정)

▷ 보안 → 대화형 액세스 (들어오는 세션 요청 표시하지 않음) 

다른 단말기에서 접속 시도

 

여기까지 오면 무인은 애니데스크 내에서 전부 구성되었지만 접속을 시도하면 'Project Media' 권한에 의해 팝업이 뜸

 

AnyDesk(으)로 녹화 또는 전송을 시작하시겠습니까?
녹화 중이거나 미러링 중일 때 AnyDesk 얩은 화면에
표시되거나 휴대전화에서 재생 중인 정보를 사용할
수 있습니다. 이러한 정보에는 비일번호, 결제
상세정보, 사진, 메시지 등이 포함됩니다.

 

완전 무인화를 위해서 팝업을 없애야 하며, 이 권한은 사용자가 설정을 변경 불가능 하기에 shizuku, app ops, adb 등을 통해 권한을 변경할 수 있는 작업이 필요

 

5) USB 디버깅 켜기

- 안드로이드 기기에서 USB 디버깅을 켜기 위해서는 개발자 모드를 활성화 해야 함

▷ 갤럭시 Tab A #1) 설정 → 태블릿 정보 → 소프트웨어 정보 →  빌드 번호 (몇번 누르면 메세지가 나옴)

갤럭시 Tab A #2) 설정 → 개발자 옵션 → USB 디버깅

 

6) 앱 설치

- adb 설치 (PC)

https://developer.android.com/studio/releases/platform-tools?hl=ko 

 

SDK 플랫폼 도구 출시 노트  |  Android 개발자  |  Android Developers

Android SDK 플랫폼 도구는 Android SDK의 구성요소입니다.

developer.android.com

▷ 접속 후 'Windows용 SDK 플랫폼 도구 다운로드' 

압축 해제

- app ops, shizuku 앱 설치 (안드로이드)

 

7) USB로 PC ↔ 안드로이드 기기 연결

- 'USB 디버깅을 허용하시겠습니까?' 메세지가 나오면 허용

- 스크립트 실행

 PC에서 윈도우 시작 - 실행) cmd 실행

 압축 푼 경로로 이동 후 명령어 실행 (필자의 경로는 C:\app\platform-tools_r34.0.3-windows\platform-tools 이므로, cd app\platform-tools_r34.0.3-windows\platform-tools)

 adb shell sh /storage/emulated/0/Android/data/moe.shizuku.privileged.api/start.sh

※ 만약 에러가 난다면 adb devices 명령어로 인증이 안되어 있나 확인이 필요

C:\app\platform-tools_r34.0.3-windows\platform-tools>adb shell sh /storage/emulated/0/Android/data/moe.shizuku.privileged.api/start.sh
adb.exe: device unauthorized.
This adb server's $ADB_VENDOR_KEYS is not set
Try 'adb kill-server' if that seems wrong.
Otherwise check for a confirmation dialog on your device.

C:\app\platform-tools_r34.0.3-windows\platform-tools>adb devices
List of devices attached
R54M702WTRJ     unauthorized

adb 에서 연결 자체가 안됨

절차)

- usb 연결 해제

- 안드로이드) 설정 - 개발자 옵션 - 'USB 디버깅 권한 승인 취소' 하고 'USB 디버깅' 끄기

- PC) 탐색기에서 %USERPROFILE%\.android 로 이동 후 adbkey 파일 2개를 삭제

- PC) adb 서비스 정지 (cmd 에서 아까 경로로 이동 후 adb 명령어 수행)

C:\app\platform-tools_r34.0.3-windows\platform-tools>adb kill-server

C:\app\platform-tools_r34.0.3-windows\platform-tools>adb start-server
* daemon not running; starting now at tcp:5037
* daemon started successfully

- 안드로이드) 'USB 디버깅' 다시 활성화

- 케이블 연결 (반드시 'USB 디버깅을 허용하시겠습니까?' 메세지가 나와야 함)

- PC) 다시 adb devices 명령어로 인증 상태 확인되면 adb 명령어 실행

C:\app\platform-tools_r34.0.3-windows\platform-tools>adb devices
List of devices attached
R54M702WTRJ     device


C:\app\platform-tools_r34.0.3-windows\platform-tools>adb shell sh /storage/emulated/0/Android/data/moe.shizuku.privileged.api/start.sh
info: start.sh begin
info: attempt to copy starter from /storage/emulated/0/Android/data/moe.shizuku.privileged.api/starter to /data/local/tmp/shizuku_starter
info: exec /data/local/tmp/shizuku_starter
info: starter begin
info: killing old process...
info: apk path is /data/app/~~Fo8oQ2lkMx4v3wMTwdcxRQ==/moe.shizuku.privileged.api-exgvjTxX0t4osGd7fxx-WQ==/base.apk
info: starting server...
info: shizuku_starter exit with 0

 

8) shizuku, app ops 실행

- 'shizuku가 실행 중입니다' 이라는 메세지가 떠야 함

- app ops 실행

 

권한 뜨면 허용

▷ shizuku 모드 '체크' 하고 '계속'

앱 리스트가 나오는데 anydesk 선택하고 권한 변경 (미디어 프로젝션 을 허용)

 

 

 

[마치며]

이제 더 이상 메세지는 뜨지 않는다

 

갤럭시는 knox 보안 때문인지 백그라운드에서는 이상하게 연결이 안되어 연구가 필요하다

 

레노버 Y700은 잘된다

 

각 설정들은 기기마다 다르니 각자 찾아봐야 한다

반응형