얼마 전 구글 포토 유료화 정책에 조금이라도 더 버텨보고자 구글 픽셀 폰을 사용해서 자동 백업 환경을 만들어 봤습니다. 구글 필셀에서 업로드되는 사진은 구글 포토의 새로운 정책에 관계없이 원본 화질로 용량의 제한 없이 백업이 가능하기 때문에 모든 사진을 일단 픽셀 폰으로 옮기고 픽셀에서 구글 포토로 업로드되도록 좀 귀찮은 절차를 사용하게끔 만들었습니다.
그리고 픽셀이 되도록이면 좋은 상태로 오래 버텨주기를 바라는 마음으로 스마트 콘센트에 연결해두고 충전과 방전도 자동으로 관리되도록 환경을 꾸몄습니다.
그런데 이렇게 해 놓고 보니 아쉬운 게 하나 더 생겼습니다.
의도치 않은 어떤 문제로 구글 포토 혹은 다른 기기들과 파일을 동기화하는 앱이 멈추어서 자동 백업이 중지되는 상황이 발생했을 때 대처를 하기 위해서는 픽셀을 직접 확인할 수밖에 없습니다.
앱이 멈춰서 동기화가 잠시 멈추어 있다 해도 그날 저녁에 집에 가서 문제 확인하고 다시 재설정을 할 수 있으면 상관없는데 만약 장기 여행 중이고 찍을 사진도 많은데 픽셀에서 문제가 발생했다면 며칠 동안 백업을 할 수 없는 난감한 상황에 처하게 됩니다. 이럴 때 안드로이드폰도 컴퓨터처럼 외부에서 원격 제어할 수 있는 방법이 없을까 하고 찾아본 솔루션입니다.
필요한 기능
안드로이드의 원격 접속이라는 솔루션에 꼭 필요한 기능은 다음과 같습니다. 한마디로 PC의 RDP와 같은 솔루션이 필요합니다.
1. 원격지에서 마치 스마트폰을 직접 조작하는 것과 같이 화면을 보면서 조작이 가능할 것
2. 핸드폰이 슬립 상태여도 접근할 수 있을 것
3. 연결할 때 별도의 인증절차 없이 원격지의 요청에 자동으로 대응할 것
4. 사용이 편리할 것
일반적으로 스마트폰 원격제어에 팀뷰어 많이 사용하는데요. 팀뷰어의 경우 접속 요청이 왔을 때 피 제어 스마트폰에서 접속을 수락해야지만 연결이 되기 때문에 방치된 핸드폰에 접속할 수는 없습니다. 그리고 윈도에 내장된 "사용자 휴대폰"이라는 PC와 스마트폰을 연결해주는 프로그램도 있지만 어떤 이유인지 갤럭시는 화면 공유 및 제어가 가능했는데 픽셀은 그 기능을 사용할 수 없었습니다.
scrcpy
그래서 선택하게 된 방법이 바로 "scrcpy"이라는 오픈소스 프로그램입니다. 사실 선택이랄 것도 없이 제가 보기엔 아직은 유일한 솔루션인것 같았습니다. 컴퓨터에서 스마트폰 화면을 보면서 제어해 주는 그런 역할을 하는 프로그램으로 약간의 잔기술을 이용하면 언제 어디서나 집에 있는 픽셀을 확인하고 제어할 수 있습니다.
scrcpy는 ADB(Android Debug Bridge)를 이용해서 핸드폰과 컴퓨터 간의 정보를 주고받는데요. 그래서 기본적으로 ADB연결이 필요합니다. ADB와 PC 간의 연결에 대해서는 이전에 별도로 다룬 포스팅이 있으니 참고해주시고, 여기서는 일단 ADB 연결이 되어 있다는 가정하에 설명 계속하겠습니다.
먼저, 깃허브의 scrcpy 저장소로 가서 프로그램을 다운로드합니다. 여기로 가시면 바로 다운로드 링크 찾으실 수 있습니다.
파일을 받고 압축을 풀어보면 ADB까지 포함된 scrcpy의 파일들을 확인할 수 있습니다. 앞에서 말씀드린 것처럼 이미 스마트폰은 ADB로 연결이 되어 있다면 바로 scrcpy.exe를 실행하시면 바로 안드로이드 폰 화면이 컴퓨터에 나타나고 마우스와 키보드로 스마트폰을 조작할 수 있습니다.
뭐 이것저것 설정 만지고 할 필요도 없이 그냥 바로 사용할 수 있습니다. 명령 프롬프트 기반에서 동작하는 프로그램이라서 실행하면 CMD창이 뜨고 아래와 같은 메시지가 뜹니다. 그리고 사용이 끝나면 창은 사라집니다.
만약 ADB 무선 연결을 해야 하는데 매번 무선 연결 설정하기가 귀찮다 하면 아래와 같이 다운로드한 파일 중에 "scrcpy-console.bat"라는 배치파일을 메모장으로 열어서 앞에 "adb connect [ip주소]" 명령을 추가해 주시고 배치파일로 사용하면 더 편하게 사용하실 수 있습니다.
ADB 무선 연결은 동일 네트워크 안에서만 가능합니다. 따라서 연결하고자 하는 픽셀과 PC는 같은 공유기에 물려있어야 하겠죠. 그리고 만약 외부에서 픽셀에 접속할 일이 생겼다 하면, 먼저 WOL로 집에 있는 PC를 켜고 PC에 RDP로 원격 접속한 다음 scrcpy로 안드로이드를 접속하려고요.
구글의 일거수일투족에 제 인생이 너무 피곤해지는 것 같지만 어쩔 수 없네요. ;; 이나마도 허락해주셔서 감사하다고 해야겠죠.
끝!
'Tips' 카테고리의 다른 글
Windows11의 최소 하드웨어 요구 사항을 충족하지 않습니다?! WhyNotWin11 (0) | 2021.07.04 |
---|---|
highlight.js + linenumberV2.js - 코드블럭에 줄번호 외 다양한 기능 추가하기 (0) | 2021.06.17 |
스마트 플러그 Sonoff S20, 커스텀 펌웨어 적용 + HomeAssistant 연결 + 구글 픽셀 배터리 레벨 관리 (0) | 2021.05.30 |
ADB(Android Debug Bridge) 연결하기 (무선 & 유선) (3) | 2021.05.24 |
댓글