[Android/Java] adb로 단말에 설치된 앱 버전 구하기
·
Android
[Android/Java] adb로 단말에 설치된 앱 버전 구하기 안녕하세요. 개발 중인 정주입니다. 오늘은 adb를 이용해 단말에 설치된 앱 버전을 구해보도록 하겠습니다. adb 접속하기 단말의 IP를 알거나 케이블로 연결되어 있으면 adb로 연결이 가능합니다. adb connect [IP] adb connect [Serial] 버전 구하기 연결을 한 후 접속을 하여 아래 명령어를 치면 앱의 버전을 알 수 있습니다. dumpsys package [package] | grep versionName 접속을 하지 않고 외부에서 한다면 앞에 adb shell을 추가하면 됩니다. 여러 대의 단말이 연결되어 있다면 아래 명령어를 앞에 추가하세요. adb -s [IP] shell 아직은 초보 개발자입니다. 더 효율..
[Android/Java] Failed to find Build Tools revision XXX 해결 방법
·
Android
[Android/Java] Failed to find Build Tools revision XXX 해결 방법 안녕하세요. 개발 중인 정주입니다. 오늘은 [Android/Java] Failed to find Build Tools revision XXX 해결 방법에 대해 알아보겠습니다. 에러 이유 Failed to find Build Tools revision XXX 에러는 에러 내용에서 원인을 찾을 수 있습니다. 프로젝트에서 설정한 XXX 버전의 Build Tool을 찾을 수 없어서 나오는 에러입니다. 해결 방법 프로젝트에서 설정한 버전을 있는 버전으로 수정하거나 Build Tool을 설치하면 됩니다. 저는 Build Tool을 설치하는 방향으로 해결을 했습니다. 빨간 동그라미 아이콘을 클릭하여 SDK 도..
[Android/Java] 코드로 TTS(TextToSpeech) 엔진 설정하기
·
Android
[Android/Java] 코드로 TTS 엔진 설정하기 안녕하세요. 개발 중인 정주입니다. 오늘은 코드로 TTS(TextToSpeech) 엔진을 설정하는 방법에 대해 알아보겠습니다. 시스템 설정에서 TTS 엔진을 설정하지 않고 앱에서 바로 설정할 수 있는 방법입니다. TTS 엔진 설정하기 https://developer.android.com/reference/android/speech/tts/TextToSpeech TextToSpeech | Android Developers developer.android.com TTS 공식 문서입니다. 해당 문서에는 TextToSpeech 객체의 생성자도 기술되어 있습니다. 두 번째 생성자의 마지막 매개변수 이름이 보이시나요? 바로 여기에 engine의 패키지명을 입력..
[안드로이드/에러] java.lang.IllegalThreadStateException 해결 방법
·
Android
안녕하세요. Thread를 다룰 때 나오는 RunTime Exception 중 하나인 java.lang.IllegalThreadStateException 해결 방법에 대해 알아보겠습니다. Android reference https://developer.android.com/reference/java/lang/IllegalThreadStateException?hl=ko-KR IllegalThreadStateException | Android 개발자 | Android Developers developer.android.com IllegalThreadStateException의 발생 원인 생성한 Thread의 상태가 비적합할 경우 발생하는 Exception입니다. 동일한 Thread 객체에 start()를 두..
[안드로이드] 하단바(내비게이션바) 높이 구하기
·
Android
안녕하세요. 안드로이드 UI/UX 디자인을 할 때 하단바 위에 뷰를 위치하게 하고 싶을 때가 있습니다. 하지만 하단바 처리가 여간 까다로운 것이 아니죠. 기종에 따라 소프트웨어 하단바와 하드웨어 하단바로 나뉘기까지 하니까요. 오늘은 소프트웨어 하단바를 가지고 있다면 그 높이를, 없다면 0을 return하는 함수를 알려드리려고 합니다. public static boolean isUseBottomNavigation(Context context) { int id = context.getResources().getIdentifier("config_showNavigationBar", "bool", "android"); boolean useSoftNavigation = context.getResources().ge..
[안드로이드/에러] Entry name 'res/animator/linear_indeterminate_line1_head_interpolator.xml' collided 해결 방법
·
Android
apk build시 발생하는 Entry name 'res/animator/linear_indeterminate_line1_head_interpolator.xml' collided 를 해결하는 방법입니다. apk build 과정에서 Entry name 'res/animator/linear_indeterminate_line1_head_interpolator.xml' collided 에러가 발생하는 경우가 있습니다. 저는 디버깅용 apk를 빌드하는 과정에 에러가 발생했습니다. 해결방법은 간단합니다. 1. Build > Clean Project를 눌러 프로젝트를 정리하면 됩니다. 1번으로도 해결이 되지 않는다면 2번 방법을 시도해 보세요. 2. 이전에 생성한 apk를 삭제하고 다시 build를 한다. 저는 de..
유정주