반응형

Kotlin 5

Kotlin코드를 Java코드로 변경하기 (Android Studio)

Android Native앱을 개발하기 위해서는 보통 Java와 Kotlin을 사용합니다. Java와 Kotlin은 같은 JVM 기반 언어이기 때문에 서로 호환이 100% 가능합니다. Java이나 Kotlin을 이용할때 어떻게 동작하는지 서로의 언어를 보고 비교하면 도움이 됩니다. (특히 기존에 Java를 이용해서 개발하신분들은 Kotlin을 새로 접할때) Android Studio에서 변환하는 기능을 제공해주고 있는데요. 바로 소개하겠습니다. ※ Android Studio Dolphin | 2021.3.1 Patch1 버전기준으로 작성되었습니다. Kotlin Code를 Java로 변환하기 Kotlin으로 작성된 kt 파일을 bytecode로 변환한뒤, decompile을 통해 java 파일로 변환합니다..

Development/Android 2023.03.06

Firebase Database가 안잡힐경우 (feat. 데이터베이스 위치)

안녕하세요. 오늘은 간단하게 Firebase Realtime Database가 안잡히는 경우에 대해서 삽질결과를 공유합니다. 저의 경우 개발중인 앱의 속도를 위해서 Realtime Database 생성시 데이터베이스의 위치를 가장 가까운 싱가포르(asia-southeast1) 로 지정했습니다. 이것이 코드에서 Database를 못 불러오는 이유중에 하나였는데요, Realtime Database의 위치가 us-central1이 아닌경우, Firebase를 초기화 하는 과정이 조금 다르다고 합니다. us-central1인경우 다음과 같이 코드를 작성하면 DatabaseReference를 읽을 수 있습니다. val database = Firebase.database() val databaseReference ..

안드로이드 현재시간 가져오기 (DateUtils)

안드로이드 개발중에 현재시간을 뷰에 표시하는 기능을 구현하기로 했다. 뷰에 표시되는 형태는 "2021년 9월 15일"의 형태로 년, 월, 일을 한글과 함께 표시해야한다. Kotlin으로 개발중이고해서 최대한 Kotlin 스럽게(?) 구현해보고자 한다. OS의 현재시간을 불러와서 사용할것이고, 많은 부분에서 사용할것이라서 공용모듈로 구성하였다. 우선 정상적으로 작동하는지 보기 위해 JUnit을 활용하여 테스트코드를 작성하였다. val currentTime: Date = Calender.getInstance().time 이렇게만 구성할경우 현재시각은 얻어오지만 원하는 형태로 구성되지 않는다. 그리하여 몇가지 코드를 추가해주었다. fun getCurrentDate(): String { val currentDa..

Development/Android 2021.09.15

[Android - Kotlin] java.lang.IllegalStateException: TextView must not be null 오류

포스팅 날짜 : 2019-07-30 Android Studio 버전 : 3.4.2 사용언어 : Kotlin Android에서 Kotlin을 이용하여 개발하는중에 Activity1에서 Activity2로 데이터를 통신하는 부분을 구현하고 있었습니다. Activity2에서 Intent를 이용하여 데이터를 수신한뒤에 TextView에 setText를 하는게 목적이었는데 제목과 같은 에러가 발생했습니다. "java.lang.IllegalStateException: TextView must not be null" Activity1에서는 Intent로 정상적으로 데이터를 송신했는데, Activity2에서 오류가 났습니다. 코드는 다음과 같습니다. Activity1에서 버튼을 클릭하면 Intent로 String을 보..

Development/Android 2019.07.30

[Android - Kotlin] ResultReceiver 상속받을때 No value passed for parameter 'handler' 오류

포스팅 날짜 : 2019-07-23 Android Studio 버전 : 3.4.2 Android에서 Kotlin을 이용하여 개발하는중에 Activity에서 Service로 데이터를 통신하고 싶었습니다. 그래서 ResultReceiver를 사용하여, 데이터를 Intent로 넘겨서 사용하려고 했는데, ResultReceiver를 상속받으니 다음과 같은 에러 메시지가 발견되었습니다. 작성한 Kotlin 코드는 다음과 같습니다. class DataResultReceiver() : ResultReceiver() { override fun onReceiveResult(resultCode: Int, resultData: Bundle?) { super.onReceiveResult(resultCode, resultDat..

Development/Android 2019.07.23
반응형