Android(3)
-
안드로이드에서 AT 명령어 보내기
안드로이드 디바이스와 외부 모뎀을 USB(시리얼포트)로 연결한 후 상호간에 AT 명령어로 통신을 해야 하는 경우가 생겼다. PC에서는 뭐 여러가지 툴들도 있고 해서 어렵지 않지만 안드로이드에서 하는건 어떻게 해야 할지 몰라 난감했다. 우선 USB(시리얼) 드라이버가 사용하고자 하는 안드로이드에 로드 되어야 한다. 안드로이드가 드라이버를 지원하지 않으면 통신할 방법이 없다. 드라이버가 있다는 가정하게 command창을 띄워 adb shell로 안드로이드에 접속한다. 이후 USB(시리얼) 장치가 연결이 되었다면 ttyACM 혹은 ttyUSB 이름으로 된 장치가 보일 것이다. 그리고 ttyACM(ttyUSB)로 부터 응답을 받으면 출력하도록 cat 으로 연결을 한다. c:\> adb shell cat /dev..
2024.02.19 -
Ubuntu에 안드로이드 command line 빌드 환경
배포용 app 빌드머신용으로 ubuntu에 android cmdline-tools를 이용하여 빌드 환경을 만들어둔다. 프로그램 설치 및 환경 설정 OpenJDK17 OpenJDK19를 설치하기로 함. $ sudo apt install openjdk-17-jdk 그리고 JAVA_HOME 환경변수를 등록해야 한다. ~/.bashrc export JAVA_HOME=/usr/lib/jvm/java-17-openjdk-amd64/ cmdline-tools 홈디렉토리에 ~/android_sdk/cmdline-tools 폴더를 생성한다. 홈디렉토리가 아닌 경우 package 설치시 매번 root 권한으로 해야 하는 불편함이 있을 수 있다. $ mkdir android_sdk $ cd android_sdk $ mkdi..
2023.06.21 -
[Android] preprocessor(전처리기) 흉내내기
디버깅과 릴리즈시 변수의 값을 다르게 가져가고 싶을때 C/C++ preprocessor로 처리하면 편한데, java는 기본적으로 preprocessor를 지원하지 않는다. 하지만 비슷하게 gradle의 build type에 따라 변수의 값을 바꿔줄 수 있는 기능이 있어 소개한다. gradle은 android studio용 빌드 툴키이라고 설명되어 있는데, 뭐 그냥 android studio용 makefile이라고 보면 될 것 같다. 자세한 내용은 Android developer를 참고할 것. build.gradle에 buildConfigField를 추가했다. buildTypes { release { ...... buildConfigField "String", "SOME_KEY", '"xxxxxx"' } ..
2022.08.01