일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 안드로이드 #코틀린 #코루틴 #콜백 #채널
- 도약연계
- 희망적금전환
- 희망적금연계
- flutter #dart #stream
- 도약계좌전환
- 도약전환
- 플러터 #안드로이드 #플레이콘솔 #앱내리기
- Flutter #Stream
- 청년도약계좌환승
- Flutter #Stream #dart
- 조립 후 재부팅
- Today
- Total
목록Android (3)
Flutter 개발 상자

나는 플레이스토어에 앱을 2개를 올려놨다. 하나는 처음 안드로이드를 배우면서 만들어본 주변 관광지 탐색 어플이고 두번째는 내가 정말 실사용 하려고 만든 수면타이머 어플이다. 그런데 이번에 내 핸드폰이 Android12 업데이트가 된 이후에 수면타이머 앱을 켜자마자 바로 크래쉬 현상이 나는 현상이 발생했다!! 바로 휴대폰을 연결하고 안드로이드 스튜디오에서 에러 로그를 확인해보니 해당 코드에서 다음과 같은 오류가 발생하고 있었다. 에러 내용 : Targeting S+ (version 31 and above) requires that one of FLAG_IMMUTABLE or FLAG_MUTABLE be specified when creating a PendingIntent. S+(버전 31 이상)를 타겟팅..
브로드캐스트 리시버를 이용해서 복잡하게 해야할 것 같지만 정말 간단하게 코드 한줄로 해결된다. simpleExoPlayer.setHandleAudioBecomingNoisy(true); 코틀린은 그냥 set만 지우고 등호로 하면 될듯 exoplayer 구버전에서는 해당 매서드가 존재하지 않을수도 있다. 가급적 최신버전 쓰자

(선행지식 : 코틀린 기본문법, 코루틴 기초, retrofit2 혹은 콜백에 대한 이해) 최근에 개발을 하면서 굉장히 골치아픈 일이 있었다. 코루틴을 이용해서 긴~작업이 걸리는 일들을 job1 -> job2 -> job3.... 이런식으로 연속적으로 처리하고 있었는데 그 사이에 자체적으로 Executorservice - Callback 으로 비동기 처리를 한 라이브러리를 사용해서 job1 -> job2 -> Callback -> job3... 이런식으로 코루틴 블록안에서 콜백을 받아야 하는 일이 생겨버렸다. Executorservice는 자체적으로 작업 쓰레드를 생성하기때문에 당연히 코루틴과는 별개로 돌아가서 어떻게해야할지 많은 고민이 되었는데 Channel을 이용해서 손쉽게 처리하는 방법이 있었다. c..