728x90

전체 글 160

[Android] 앱에서 기기 볼륨 조절하기 / AudioManager (+TTS)

기기의 볼륨이 꺼져있거나, 작게 설정되어 있더라도최대 크기의 볼륨으로 음성을 출력해야하는 기능이 필요했다. 앱에서 기기의 볼륨을 조절하는 방법을 알아보자.       ✅ 안드로이드 소리의 종류 안드로이드에서는 소리를 다음 4가지 종류로 분리하여 설정할 수 있다.  순서대로 [시스템] · [알림] · [벨소리] · [미디어] - 시스템앱과 관계 없이 기기 내에서 발생하는 기본적인 소리에 해당한다. - 알림문자, 카톡 등 Push 알림(Notification)이 울리는 소리에 해당한다. - 벨소리전화가 수신될 때 울리는 소리다. - 미디어음성 파일, 동영상 등 미디어에 적용되는 소리이며,보통 앱에서 발생하는 소리도 미디어에 포함된다.       ✅ 볼륨 조절 앱에서 발생하는 소리에 해당하는 미디어 볼륨을 조..

[Android] 앱에서 TTS 사용해보기

TTS는 Text To Speech의 약자로, 직역하면 텍스트 음성 변환 또는 음성합성이다.흔히 생각할 수 있는 글자를 음성으로 읽어주는 기능을 의미한다. Android는 내장 클래스로서 TTS 기능을 제공한다.(android.speech.tts.TextToSpeech)  이제 TTS 예제를 만들어 보자.      ✅ TTS 초기화class MainActivity: AppCompatActivity() { // TTS 객체 nullable 초기화 private var tts: TextToSpeech? = null override fun onCreate() { ... initTTS() } private fun initTTS() { tts = TextToSpeech(Contex..

[Android] OSS Licenses / 라이선스란? / 앱에 라이선스 표시하기 / OSSLicensesPlugin

라이선스에 대해 알아보고앱에 사용된 OSS Licenses를 표시해본다. ※ OSS : 오픈 소스 소프트웨어 라이선스(Open Source Software Licenses)     ✅ 라이선스 라이선스는 소프트웨어나 콘텐츠의 사용·배포·수정 등에 대한 법적 권한과 조건을 명시한 문서다. 즉, 개인이나 기업이 만든 소프트웨어를 다른 사람들이 사용할 수 있도록 허용하는 대신,특정 조건을 지키도록 요구하는 약속이라고 볼 수 있다. '라이센스'라고 부르는 사람도 많은데, 한국어로는 '라이선스'가 표준이다. 라이선스의 주 목적은 저작자의 권리를 보호하면서,타인들에게는 재사용·배포 허가로 인한 생산성 향상이다.      ✅ 소프트웨어 라이선스 종류 라이선스도 여러 종류가 있는데, 그 중에서도 대표적인 몇 가지만 알..

[Android] release 모드 빌드하기 / Build Variants / Signing Configs

당신의 앱에 별다른 설정을 하지 않았다면 항상 debug 모드로 빌드되고 있을 것이다.앱을 release 모드로 빌드하는 방법을 알아본다.       ✅ APK 빌드하기 APK를 빌드하는 최종 목적은 Signing Configs를 작성하기 위함이다.그리고 Signing Configs를 작성하기 위해서는 Store Key 파일이 필요하다. 그렇기 때문에 APK를 만들고 시작해본다.   🎈 [Build] → [Generate Signed Bundle / APK...] 경로로 진입한다.     🎈 APK 를 선택해준다.     🎈 [Create new...] 를 눌러서 새로운 Key Store를 생성해준다.     🎈 빨간 체크 표시의 항목을 모두 작성해준다.  Key Store가 저장될 경로를 설정하..

[Android] 앱 버전 · Target SDK · 빌드 날짜 표시하기 / BuildConfig import 오류 해결

앱에 대한 간략한 정보를 화면에 표시해야하는 일이 생겼다.이번 포스팅에서는 다음 3가지 정보를 표시해본다.   - 앱 버전현재 앱이 몇 버전인지 명시한다.이는 앱 정보 중에서 가장 기본적인 내용이다.  - Target SDKAPI LEVEL의 경우, 사실 개발자 관점에서만 다루는 정보에 가깝다. 하지만 구글이 매년 Target SDK 업데이트 관련 압박을 넣기도 하고,우리 앱의 Target SDK는 몇이냐는 질문을 많이 받던 와중에그냥 앱에 명시했으면 좋겠다는 요청이 있어서 표시했다.  - 앱 빌드 날짜우리 앱의 최근 업데이트 날짜가 언제쯤인지 궁금하다는 요청이 많았다.업데이트가 잦다면, 사용자에게 '짧은 주기로 관리되는 앱'으로 인식되는 등긍정적인 부분도 있다고 본다.      ✅ 앱 버전 Gradle..

[Android] Android Version 종류 및 점유율 확인 / API LEVEL / Target SDK

이번 포스팅에서는 Android Version과작성일 날짜 기준으로 점유율을 확인해본다.      ✅ Android Version Android Version코드명API LEVEL릴리즈 날짜4.1Jelly Bean162012.07.094.2 Jelly Bean 17 2012.07.09 4.3 Jelly Bean 18 2012.07.09 4.4KitKat192013.10.314.4WKitKat Wear20 2013.10.31 5Lollipop212014.11.125.1Lollipop22 2014.11.12 6MarshMallow232015.10.057Nougat242016.08.227.1.1Nougat252016.10.028Oreo262017.08.218.1Oreo272017.10.259Pie282018...

[Android] 안드로이드 스튜디오 단축키 정리 (Windows) / + 소소한 크롬 단축키 정리

안드로이드 스튜디오에서 유용하게 사용할 수 있는 단축키를 정리해본다.본인이 맨날 까먹어서 가끔 보려고 작성하는 포스팅       ✅ 국민 단축키  ctrl + c 복사 ctrl + v 붙여넣기 ctrl + x 잘라내기 ctrl + a전체 선택ctrl + f검색 ctrl +  z 작업 내용 뒤로 되돌리기 ctrl +  shift + z 작업 내용 앞으로 되돌리기  여기까진 정말 기본적인 단축키다.작성하지 않으려다 혹시 모를 찝찝함에 작성했다.      ✅ 안드로이드 스튜디오 유용한 단축키  ● shift + F10 : Run  ● ctrl + d : 행 복사  ● ctrl + y : 행 삭제  ● ctrl + q : 인라인 문서 조회 클래스, 함수, 변수 등에 대한 문서를 간략히 확인할 수 있는 단축..

[Android] NDK / JNI (3) - CMake 방식 적용

이번 포스팅에서는 CMake 방식을 사용해보려고 한다.CMake 방식은 Gradle과의 통합이 훨씬 매끄럽고, 빌드 관리가 더 수월하다. 지난 포스팅의 Android.mk 파일과 ndk-build를 사용하던 방식보다CMake 방식이 현시점으로서는 더 표준적인 방식이라고 볼 수 있다.    먼저 구조 상 다른 점을 간단히 짚어본다. - [jni] 폴더와 Android.mk, Application.mk 파일은 사용하지 않는다.- CMakeList.txt 파일이 대체된다.- Gradle 에 작성할 내용이 약간 변경된다.- [ndk-build] 등 수동으로 빌드하지 않아도 된다. (Gradle이 자동으로 빌드해줌)    이제 직접 적용해보자.      ✅ NDK 설치 · 세팅 지난 포스팅의 NDK 설치 · 세팅..

728x90