일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- firebase
- 컴파일
- convert
- test
- fabic
- porterduff
- null safety
- vuepress
- Hyperledger
- error
- Android
- coroutines
- 스트리밍
- LAYER_TYPE_SOFTWARE
- fabric-sdk-java
- 다윈
- bigquery
- Exception
- C
- Realm
- web3js
- 안드로이드
- hardwareacceleration
- kotlin
- quick-start
- Gradle
- ethereum
- Glide
- log
- dataginding
- Today
- Total
목록kotlin (8)
날마다 새롭게 또 날마다 새롭게
kotlin.coroutines 한번 사용해보자 - 초급편kotlin.coroutines의 간단한 명령들을 사용해보려고 합니다. 실제 구현한 샘플 코드는 Github에 있습니다.light-weight threadscoroutines 에서는 launch라는 명령을 사용해서 thread 처럼 사용이 가능합니다. 아래는 일정 time이 지난 후에 TextView 의 색을 변경하는 코드입니다. delay라는 명령도 coroutines 에서 제공하는 명령입니다.launch(UI) { delay(time) changeColor() }coroutines 에서 구현된 thread 는 light-weight 하기 때문에 다음과 같은 구현이 가능합니다. 코틀린의 guide를 보면 thread를 사용해서 동일하게 구현하면 ..
Anko-commons를 사용해보자Anko는 안드로이드 개발을 더 빠르고 쉽게 해주는 코틀린 라이브러리 입니다. Anko 를 사용해서 xml을 사용하지 않고 동적으로 layout 을 만들 수 있는 라이브러리로 알려져 있는데 그 외에도 다양한 기능을 제공하고 있습니다. 이 중에서 Anko Commons 사용 방법을 간단히 소개하고자 합니다.샘플 코드 : GitHub 참고Kotlinanko 를 사용하기 위해서 Kotlin 플러그인을 설정이 되어 있어야 합니다. Android kotlin 프로젝트 시작하기gradle 설정anko commons 라이브러리를 사용하기 위해서 anko 와 anko-commons dependency를 추가합니다.// app/build.gradle ... dependencies { c..
Android kotlin 변환 중 발생한 realm 관련 에러 - NotFoundExceptionjava 에서 kotlin 으로 변환 중, realm 관련 에러가 발생했다.Execution failed for task ‘:app:transformClassesWithRealmTransformerForDebug’. javassist.NotFoundException: pakage.class`gradle build 중 에러가 발생한다.이 에러는 java 에서 lambda를 사용하기 위해 추가한 dependency 때문에 발생하는데, 이상한건 빌드 시 에러는 발생하지만 ‘Run app’을 하면 앱이 정상적으로 실행이 된다..???어쨌든 빌드 에러를 없애기 위해서 lambda 관련 gradle 설정을 제거한다./..
Android kotlin 변환 중 발생한 realm 관련 에러 - IllegalArgumentExceptionjava 에서 kotlin 으로 변환 중, realm 관련 에러가 발생했다. java.lang.IllegalArgumentException: class is not part of the schema for this Realm..realm.createObject 호출 시, 발생한다. 에러가 발생하게 된 원인은 gradle 설정때문이었다.gradle 파일에 kotlin 플러그인을 작성할 때, java에서 kotlin 으로 변환하다보니 아래와 같은 순서로 플러그인을 추가했다.apply plugin: 'realm-android' apply plugin: 'kotlin-android'플러그인을 호출 순서..
코틀린에서 databinding 사용하기java 에서 kotlin 으로 코드 변환 중, build 할 때는 에러가 없는데, 앱 실행할 때, 다음과 같은 에러가 발생한다.Error:(13, 37) Unresolved reference: databinding Error:(20, 35) Unresolved reference: ActivityMainBinding Error:(28, 51) Cannot infer a type for this parameter. Please specify it explicitly.kotlin 에서 databinding 을 사용하기 위해서는 플러그인과 dependency 추가가 필요하다. app/build.gradle 에 다음과 같이 추가한다.apply plugin: 'kotlin-..
코틀린에서 nullable 사용 - Null Safety코틀린에서는 자바보다 간단하게 null 에 대한 확인을 할 수 있고, 안전하게 호출할 수 있다. 어떻게 하는지 방법을 살펴보자Safe Call - ?., ?:null 체크하는 방법을 자바와 비교해보자 어떤 String에 대한 length를 리턴하는 코드를 구현할 때, 자바에서는 다음과 같이 작성할 수 있다. length 를 호출할 때 NullException이 발생할 수 있으므로 null인지 아닌지를 확인하는 코드가 필요하다.String text; if (text != null) return text.length() else return null이를 코틀린에서는 safe call operator ?.를 사용해서 다음과 같이 작성할 수 있다.var t..
코틀린에서 java의 static 사용하기Companion object로 자바의 static 과 동일하게 사용할 수 있다.Companion ObjectCompanion object 를 내에 선언한 변수와 메서드는 java 에서 사용하는 static 형태로 사용할 수 있다. companion object 내에 변수와 메서드 하나를 작성해보자class Key(val value: Int) { companion object { val COMPARATOR: Comparator = compareBy { it.value } fun bar() {} } }위와 같이 작성하면 아래와 같은 형태로 호출할 수 있다.Key.COMPARATOR Key.bar()java 에서 static field 호출java에서 코틀린 위의 변..
코틀린 프로젝트 생성새 프로젝트 생성안드로이드 스튜디오 실행해서 ‘Start a new Android Studio project’ 를 선택한다. New Project 화면에서 앱 기본 정보를 입력한다. Target을 설정한다. (특별히 정해진 게 없으면 default 값으로 선택)‘Empty Activity’ 로 선택 후, default Activity를 생성한다.생성된 Java 코드 코틀린 파일로 변환Help - Find Action… 을 선택한다.‘convert java file to kotlin’ 을 입력 후, action 을 선택한다.kotlin 으로 변환된 코드를 확인할 수 있다.코틀린 사용을 위한 셋팅코틀린 파일 변환 후, ‘Sync Project with Gradle Files’ 를 선택하면..