Task<String> to String in Kotlin

Hue·2023년 9월 12일

노트 메모 이것저것

목록 보기
17/18

Task<String>으로 리턴 받은 값을 String으로 주어야해서

val result= helper.getId("test").result.toString()

과 같이 썼더니 IllegalException이 떴다

java.lang.IllegalStateException: Task is not yet complete

찾아보니 getResult는 hang이나 deadlock이 발생할 수 있어 지양하는 방법이라고 한다.

await()을 이용하여 해결

lifecycleScope.launch {
            try {
                val result= helper?.getFolderId("test").await()?.toString()?:""
            } catch (e: Exception) {
                
            }
}

0개의 댓글