GDSC HUFS 4기/Kotlin Team #3

[3팀] Android-12-Kotlin : 키즈 드로잉 앱 (4)

eeunbii 2022. 11. 21. 17:41

 

이 글은 유데미 강의 Android 12 및 Kotlin 개발 완전 정복을 참고하여 작성하였습니다.

작성자 : 김은비

개발환경은 Windows, Android Studio입니다. 

 

132 ~ 137 강의 내용 정리입니다.

 

1. 취소 버튼과 기능 추가하기

1. MainActivity.kt

2. DrawingView.kt

 

2. coroutine

시간이 많이 소요되는 작업을 다른 스레드로 넘기는 것.

 

안드로이드는 UI 시스템이 최대 5초까지 지연되게 함.

오래 걸리는 작업을 background의 다른 스레드로 넘겨 뒤에서 실행됨

 

특징

  • Light weight (하나의 스레드와 여러 코루틴 실행)
  • Fewer Memory Leaks (메모리 누수 감소)
  • Built in cancellation support (취소 지원)
  • Jetpack Integration (jetpack 통합)

 

3. 공급자 추가하기

1. 앱에 패스와 이미지 샌드위치 메이커 추가하기

 

path.xml

Manifest.xml

→ 보호되는 데이터에 일회성으로 액세스 할 수 있게 하는 방법

 

4. 이미지 저장

→ 코루틴과 출력스트림 사용해서 저장

 

MainActivity.kt

 

 

 

5. 커스텀 실행 다이얼로그 반영 후 숨기기

 

6. 이미지 공유 기능 추가

이메일, 왓츠앱 등 이용

getBitmapFromView 로 이미지 가졌는지 확인 필수

runOnUiThread {} 부분에서 share image 메소드 호출