일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 넷플릭스
- kotlin
- 이모지
- Firebase
- 장자명언
- 공자명언
- jetpack compose
- Freesound
- 벤자민플랭클린
- bash
- FSM
- DART
- 명심보감
- 코틀린
- 소울칼리버6
- 1인개발자
- Streaming
- 오픈소스
- androidx
- Flutter
- 파이썬
- 좋은글필사하기
- Android
- 이모지메모
- Linux
- ASMR
- 명언모음
- Coroutine
- 공부집중
- recyclerview
- Today
- Total
목록Coroutine (7)
Vintage appMaker의 Tech Blog
App을 개발하다보면 종종 구현해야 하는 것이 "배너의 자동스크롤"이다. 이럴 경우, 아무생각없이 Timer를 사용할 때가 있는 데, 반드시 댓가를 치르게 된다. Fragment를 이동하고 백키로 돌아올 시, Timer를 종료시키지 못하고 여러 개 생성되는 경우가 발생하기 때문이다. 이를 해결하기 위해서는 고전적인 방법인 Handler나 Broadcast를 이용하는 방법이 있다. 그러나 많이 귀찮다. 구글링해보면 많은 개발자들이 ViewModel과 Coroutine을 이용한 타이머를 사용하는 것을 알 수 있다. 고민했던 것보다 상당히 간단하고 확실하게 제어가 가능하다. [app의 Gradle에 종속성 추가] buildFeatures { viewBinding true } dependencies { ... ..
Coroutine을 취소하려면 Job의 cancel()를 사용한다. Job을 사용하는 방법은 크게 2가지이다. CoroutineScope의 lauch를 실행 후, 결과값으로 Job을 받는방법 Job을 생성한 후, CoroutineScope의 lauch의 파라메터로 넘기는 방법(주로 + 를 이용하여 CoroutineDispatcher와 같이 넘김) import kotlinx.coroutines.* import java.util.concurrent.TimeUnit fun main(args: Array) = runBlocking { // job을 넘겨서 취소 val job = Job() JobTest1(job) delay(1000 * 5) job.cancel() println("job.cancel()") //..
구글플레이 설치 Search Pixabay - github - Google Play 앱 - 무료 이미지를 검색합니다. - Open API를 사용했습니다. - 전체소스는 다음에 있습니다. https://github.com/VintageAppMaker/SearchPixaby play.google.com VintageAppMaker/SearchPixaby Pixabay 검색. Contribute to VintageAppMaker/SearchPixaby development by creating an account on GitHub. github.com Pixabay 검색 무료 이미지 제공서비스인 Pixabay의 Open API를 이용한 검색 및 링크 Open API를 사용하기 위해서는 가입하여 Key를 얻어야..