본문 바로가기

안드로이드 코틀린145

[Kotlin][Android] OCR 기능을 만들어보자 안녕하세요~ 오늘은 코틀린을 사용하여 OCR(Optical character recognition) 기능을 구현해 보겠습니다. OCR는 인간이 종이 위에 써 놓은 글씨를 인지하여 텍스트 데이터로 바꿔주는 기능을 말해요. 이 포스팅에서는 스틱코드를 사용하여 글자가 들어 있는 이미지에서 글자를 인식하는 간단한 앱을 만들어보겠습니다. 해당 포스팅에 사용된 스틱코드 stickode.com/detail.html?no=2177 스틱코드 stickode.com # 환경 세팅 1. 라이브러리 추가 ▶ 해당 기능을 사용하기 위해서는 tess-two라는 모듈이 필요합니다. 위 그림처럼 build.gaddle(moudle) 파일을 열어서 맨 아래 한 줄을 추가하고 동기화시켜줍니다. 최신 버전은 여기서 확인하실 수 있습니다... 2021. 6. 24.
[Kotlin][Android] Data Bindng을 이용한 계산기 어플 만들기 안녕하세요. 예전에 자바를 이용해서 계산기를 만들어 봤는데요. 이번에는 코틀린으로 구현해보도록 하겠습니다. 이번 예제에서는 특히 화면에 View들이 많이 들어가는데요. 일일이 findVidwID를 통해서 각 View를 접근하기에는 너무 힘들고 귀찮은 작업입니다. 그래서 이번에는 Data Binding을 사용해서 현재 Activity와 연결되어 있는 .xml 파일의 View에 접근해보도록 하겠습니다. Data Binding은 Jetpack의 구성요소 중 하나입니다. 제트팩은 2018년 구글 IO 행사에서 발표된 안드로이드 앱 개발 패키지 묶음입니다. 데이터 바인딩은 이름 그대로 액티비티나 프래그먼트의 데이터를 화면에 출력하는 부분을 도와주는 AAC 기법입니다. Data Binding이 무엇인지 안드로이드 .. 2021. 6. 20.
[Kotlin][Android] 달력 만들기 안드로이드에서 제공하는 calendarview를 사용하여 달력을 만들고 특정 날짜에 일정을 파일에 저장하는 기능을 사용하도록 하겠습니다 calendarview 란? 안드로이드에서 제공하는 달력 위젯 입니다. 참고) developer.android.com/reference/android/widget/CalendarView 먼저 예제에 사용할 화면을 만들어보겠습니다. 다음 예제에 사용할 코드를 작성하겠습니다. 1. 예제에 사용할 UI 정보 값 생성 ui 정보를 수정하기 위해 xml에 생성해둔 ui 정보를 호출해서 변수로 생성합니다. import android.os.Bundle import android.widget.Button import android.widget.CalendarView import and.. 2021. 6. 17.
[Kotlin][Android] 스톱워치 만들기 안녕하세요. 이번에는 코틀린을 통해 스톱워치를 구현 해보도록 하겠습니다. 우선 만들고자 하는 화면을 그려보도록 하겠습니다. 화면구성은 다음과 같습니다. 스톱워치를 컨트롤 할 수 있는 시작과 초기화 버튼과 각 기록을 화면에 표시하는 기록하기 버튼 그리고 각 시간을 보여주는 TextView를 준비해둡니다. 이제 이를 어떻게 구현하는지 알아보도록 하겠습니다. 우선 타이머, 스톱워치 등을 구현하기 위해서는 'Thread'라는 녀석을 알아야 합니다. Thread란 프로세스(process) 내에서 실제로 작업을 수행하는 주체를 의미합니다. 즉 시간초를 세어주는 작업을 메인스레드(UI스레드)가 아닌 다른 스레드(워크 스레드, 백그라운드 스레드)로 동작시켜야 합니다. 또한 여기서 생각을 하셔야 하는게 백그라운드 스레드.. 2021. 6. 7.
[Kotlin][Android] 커스텀 다이얼로그 빠르게 만들기 이번 포스팅에선 코틀린으로 커스텀 다이얼로그를 만드는 방법에 대해 포스팅하겠습니다. 자바로 만드는 방법에 대해선 아래 포스팅을 참고해 주세요. stickode.tistory.com/14 [Java][Android] 내 입맛대로 다이얼로그 커스텀하기 안녕하세요 이번에는 다이얼로그를 커스텀 하고 나만의 다이얼로그를 만드는 방법을 알아볼 예정입니다. 안드로이드의 다이얼로그는 기본적으로 제공하는 Alert Dialog가 있습니다. 하지만 개인 stickode.tistory.com 이 포스팅에서 사용된 모든 예제 코드는 아래 주소에서 확인하실 수 있습니다. stickode.com/detail.html?no=2147 스틱코드 stickode.com 먼저 메인 액티비티의 xml을 만들겠습니다. 텍스트뷰 하나를 놓을 .. 2021. 6. 5.
[Kotlin][Android] 그래프 만들기 이번 예제는 MPAndroidChart 라이브러리를 사용해서 그래프를 만들어보겠습니다. MPAndroidChart 란? 안드로이드 차트 기능을 제공하는 라이브러리 입니다. [참고] github.com/PhilJay/MPAndroidChart 라이브러리 추가 먼저, build.gradle 파일 안에 Glide라는 라이브러리를 사용하기 위해 아래 화면처럼 추가해주시고 위에 Sync Now 버튼을 누르시면 라이브러리가 적용됩니다. implementation 'com.github.PhilJay:MPAndroidChart:v3.1.0' 위에 코드만 추가하고 실행할 경우 아래 사진과 같은 에러가 발생합니다. 이 에러는 아래 코드를 추가하면 해결이 됩니다. 첫번쨰 gradle 파일에 아래 화면처럼 maven 값을 추.. 2021. 6. 4.
[Kotlin][Android] SST(SpeechToText) 기능 구현하기 안녕하세요 ~ 오늘은 SST 기능을 구현해 보겠습니다. SpeehToText(이하 SST) 기능은 음성을 인식해서 텍스트로 변환시켜주는 기능입니다. 한번 만들어 볼까요? 스틱 코드? stickode.com/mainlogin.html STICKODE stickode.com 권한 설정 Manifest에 권한을 설정해줍니다. // MainActivity.kt // 권한 체크 코드 if (Build.VERSION.SDK_INT >= 23) ActivityCompat.requestPermissions(this, arrayOf(Manifest.permission.INTERNET, Manifest.permission.RECORD_AUDIO), REQUEST_CODE) 레이아웃 만들기 인식한 음성을 텍스트로 보여주는 .. 2021. 5. 31.
[Kotlin][Android] 앱 잠금 화면 만들기 안녕하세요! 오늘은 스틱코드를 이용하여 앱 잠금 화면을 만들어보겠습니다. 진행 순서는 1. 잠금화면 설정(활성화/비활성화/비밀번호 변경/잠금해제) 타입 파일 만들기 2. 비밀번호 입력 액티비티 3. 설정 화면(메인 액티비티) 만들기 1. 잠금화면 설정(활성화/비활성화/비밀번호 변경/잠금해제) 타입 파일 만들기 먼저 메인 엑티비티에 있는 버튼에 따라 상태(활성화/비활성화/비밀번호 변경/잠금해제)를 나타낼 오브젝트 파일을 만들도록 하겠습니다. * AppLockConst.kt 다음으로 상태 및 잠금 비밀번호를 저장하는 클래스 파일을 만들겠습니다. * AppLock.kt 2. 비밀번호 입력 액티비티 위 이미지와 같이 비밀번호가 입력 될 EditText, 번호를 누를 버튼으로 구성합니다. 먼저 EditText에 .. 2021. 5. 30.
[Kotlin][Android] 안드로이드 다국어 지원 여러 국가를 대상으로 하는 앱을 만들떄, 해당 국가의 언어에 맞게 여러 언어를 제공해줘야 할 필요가 있습니다. 이번 예제에서는 어떻게 다국어를 지원해줄 수 있는지 알아보도록 하겠습니다. 여러 나라에세 서비스를 출시 할려면, 해당 나라가 쓰는 언어들을 지원해 줘야 합니다. 이번 시간에는 kotlin으로 앱 내에서 언어 설정을 변경하는 방법을 알아보도록 하겠습니다. 저번 자바에서 사용했던 화면을 그대로 사용하겠습니다. (자바로 언어 설정을 바꾸는 방법은 이 포스팅을 참고해주세요.) activity_translation.xml 화면 구성은 라디오 버튼과 바뀐 언어를 표시할 TextView로 이루어져 있습니다. 한글 버튼을 클릭시 '샘플 문장'이 보일 것이며 영어 버튼을 클릭하면 'Sample Sentence'.. 2021. 5. 27.