ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • Android Studio 디바이스, 이젠 WIFI로 연결하세요
    Android 2020. 5. 28. 11:26

    Android Studio로 디바이스 연결을 해서 개발을 하다 보면 불편한 점이 몇 가지 있습니다.

     

    - 항상 MAC과 케이블이 연결되어 있어서 거추장스럽습니다.
    - 디버그를 하는 도중 케이블 접촉 불량으로 연결이 해제된다면 새로 다시 연결을 해주어야 합니다.
    - 기타 등.. 이외에도 간간히 느껴지는 케이블 연결

    이런 문제점은 Android Studio에 있는 에뮬레이터를 사용한다면 해소될 수 있습니다.

     

    하지만 에뮬레이터도 불편한점이 있을 수 있고,
    디바이스를 연결해서 테스트를 해야 하는 경우들이 있기 때문에

    저는 대부분의 테스트를 디바이스로 연결하여 진행합니다.

     

    또 다른 방법으로는 WIFI ADB 연결이 있습니다.

    WIFI ADB 연결은 Android Studio의 plugin으로 손쉽게 설치하고 사용할 수 있는 장점이 있습니다.

     

    WIFI ADB Plugins..

    하지만 저는 이 방법도 연결 하는 절차가 귀찮거나 연결이 종종 해제되는 불편함을 느꼈고 결국 잘 사용하지 않게 되었습니다.

    WIFI ADB를 연결은 터미널에서도 가능하기 때문에 간단한 쉘 스크립트를 이용한 방법을 사용하기로 했습니다.

     

    script

    스크립트는 디바이스가 WIFI에 연결되어있고 MAC과 연결되어있다는 전제 조건을 바탕으로 작동합니다.

    tcpip 5555의 포트를 열어주고 사용자가 입력한 wifi의 ip를 이용하여

    adb에 연결하는 코드로 구성되어 있습니다.

    해당 스크립트 파일을 첨부드립니다.

    ykt_wifi.sh
    0.00MB

    터미널 활용이 익숙하신 분들은 직접 입력해 사용해도 되지만

    MAC을 기준으로 첨부한 파일을 활용하는 방법을 순서대로 설명드리겠습니다.

    ADB 환경 변수 설정

    ykt_wifi.sh 파일을 우리는 루트 디렉토리에 저장하여 사용할 것입니다.

    이때, adb 접근이 루트에서 가능해야 하므로 ADB의 환경변수를 설정해줍니다.

    환경 변수 설정은 여기를 참고해주세요.

     

    Mac 에서 ADB Path 환경변수로 설정

    ADB Path 환경변수로 설정 1. ADB의 경로를 확인합니다 * [Android 설치경로]/sdk/platform-tools 2. VI로 .bash_profile 파일을 열고 수정합니다 1 ghj:~ ghj$ vi ~/.bash_profile cs 1 2 export ADB_HOME=/Users..

    ghj1001020.tistory.com

    .sh 파일 다운로드

    위의 ykt_wifi.sh 파일을 다운로드하여 루트 디렉토리에 넣습니다.

     

     

    권한 설정

    새로 생성된 파일을 실행시키려면 퍼미션을 열어주어야 합니다.

    명령어를 이용해 ykt_wifi.sh 파일의 퍼미션을 설정해줍니다.

     

     

    .sh 파일 실행

    스마트폰을 MAC과 연결 후 sh ykt_wifi.sh 명령어를 이용하여 ykt_wifi.sh 파일을 실행시킵니다.

    안내에 따라 현재 스마트폰에 연결된 WIFI의 IP 주소를 찾아 입력합니다.

     

    ip 입력 후 엔터를 누르면, 연결이 성공되었다면 위와 같이 device의 목록이 출력됩니다.

    그 후 디바이스와 MAC이 연결된 케이블을 뽑아도

     

    Android Studio에서 디바이스 연결이 해제되지 않은 모습을 볼 수 있습니다.

    이 상태로 Run을 하면 케이블 없이도 설치가 가능합니다.

    단점

    하지만 이 방법에도 단점은 있었습니다.

    - 단점 1. 

    설치와 디버그가 케이블 연결보다 느립니다.

    아무래도 WIFI를 통한 통신이라 그런지 디버그 할 때, 종종 느껴지곤 합니다.

    하지만, 이 단점은 크게 체감되는 부분은 아닙니다.

    - 단점 2.

    Logcat을 효율적으로 사용할 수 없습니다.

    로그를 보려고 확인해 보니 해당 프로세스가 잡히지 않았습니다.

     

    그래서 로그에 별도로 TAG 등으로 filter 하여 로그를 확인해야 하는 단점이 있습니다.

    댓글

Designed by Tistory.