2019. 6. 21. 00:13ㆍAndroid
안녕하세요! Nitro입니다.
오늘 제가 처음으로 GDG Korea 측에서 주최하는 이벤트인 Google I/O '19 Extended in Korea Android에 참석했는데요, 기본적으로 Google I/O 2019를 요약하는 듯하면서 더욱 깊은 부분을 세세하게 집어주는 재미있는 이벤트였습니다.
즉 오늘의 주제는 제가 참석했던 이벤트, Google I/O '19 Extended in Korea Android에 관한 간단한 리뷰입니다.
사실 이러한 이벤트를 한 번도 가본 적이 없는지라 한번 가보고 싶어서 신청을 해 보았습니다.
이벤트 자체는 제가 거주하는 곳에서 그다지 멀지 않은 곳에서 진행되었습니다.
대치동에 위치한 구글 스타트업 캠퍼스 서울이었는데요, 지하 2층이라길레 으... 했었지만, 넓고 쾌적한 공간이었습니다.
1층에 도착하니 이런 로고가 뙇! 하고 반겨주더군요.
뭔가 느낌이 새로웠습니다.
아마 지하 1층에 있던 친구들이었던 것 같습니다.
귀여워서 찍어뒀습니다 ㅋㅋ
지하 2층으로 내려가면 미리 구입해두었던 입장권(QR 코드)을 인식시켜주고, 이름과 이메일을 입력한 뒤..
무언가 본격적으로 멋있는 디자인의 강연장이 나오게 됩니다.
앞에 보이듯 간단한 다과와 음료가 함께 준비되어 있습니다.
이런 자신의 이름이 프린트 되어진 게스트용 무언가를 입장권을 뽑아줍니다.
입장권 가격입니다.
구매할 때도 생각보다 싸네..? 라는 생각을 하면서 구입했는데, 입장권 뽑아줄 때 유리컵도 나눠주더군요..
거의 4시간 정도 되는 세션에다가 유리컵 + 다과 + 스티커까지.. 가격 대비 너무 많은걸 받아가는 느낌이었습니다.
약 170명의 인원과 함께하는 강연장이었습니다.
내용은 위와 같이 구성되어 있었습니다.
아쉽게도 시간이 없어서 모든 섹션을 다 보지는 못하고, 강경완 님의 Android Accessibility까지 보고 돌아왔습니다.
첫 번째로는 노현석 님의 'Keynote' 발표부터, '새로운 Android 훑어보기'였습니다.
아직도 기억에 남는 인상적인 프로필 사진입니다. (바탕화면도 저 캐릭터 쓰셨던 것 같습니다.)
그렇다고 합니다..
아무튼 아레의 내용들은 'Keynote'와 '새로운 Android 훑어보기'섹션에서 발표하신 내용의 간단한 요약입니다.
- Bubble
- 페이스북의 챗 해드와 비슷한 기능
- 팝업 알림이 뜰 때 발생하는 램 누수와 그 외 기타 등등을 막기 위해 도입했다고 함
- 기본 제공 메시지 어플 같은 채팅어플들에게 권장한다고 하는 듯
- 다른 앱들 사용할 수 있도록 지원해주는 듯 함
- 빌더로 챗 해드에 띄울 정보들을 전송해주면 챗 해드 시스템이 띄어주는 구조인듯
- Dark Theme
- 색상 반전이 아닌 색상 코드 지정을 통한 색상 변경
- 기본 앱들 제공할 예정
- Force Dark Theme 모드로 특정 어플에 강제로 색상 변경 가능
- 앱 안에서 별도로 끄고 키는 기능 제공
- 안드로이드 시스템이 이미 어두운 태마일 경우 앱이 그 설정을 따라가는 기능이 있음
- 안드로이드 시스탬 설정을 무시하고 어두운 태마를 활성/비활성 가능
- OLED DIsplay를 사용할 경우, 어두운 태마를 사용하면 배터리 사용량 감소 효과가 있기에, 절전모드에 따라 앱이 다크 모드로 전환되는 기능이 있음
- Gesture Navigation
- 새롭게 바뀐 Gesture Navigation
- 왼쪽에서 화면 중앙 쪽으로 드래그 시 뒤로 가기
- 아레서 위로 빠르게 슬라이드 하여 홈 화면 가기
- 아레서 위로 천천히 슬라이드 하여 메뉴 가기
- 제스처 에어리어
- 하단, 왼쪽, 오른쪽 공간은 시스템적으로 우선시 되어짐
- 하단 제스처 영역은 명시적으로 커스텀 불가능
- 허나 좌우는 선택적으로 비활성화 가능하다는 듯해 보임
- Font
- 하이버네이션 off
- Line Background
- Kotlin
- 구글이 공식적으로 코틀린 지원
- KTX
- Jetpack Support
- Jetpack Composed
- Refactoring
- Android Studio Plugin
- 멀티 플랫폼
- Notification
- Prioritized/Gentle 등으로 우선순위가 나누어짐
- 우선순위가 높은 친구들: 시스템 관련, 커뮤니케이션 관련 (카톡 같은 메신저 앱들 말하는 듯), 이벤트 등등
- Prioritized/Gentle 등으로 우선순위가 나누어짐
- Jetpack Compose
- 차세대 UI
- Unbundled
- 반응형
- Kotlin 지원
- Open Source
- XML 레이아웃 없음
- External Storage
- Storage 접근이 일부 제한됨 (보안상의 이유인 듯, 아마 Permission이 추가되거나 뭔가 어캐 되것지)
- Location
- Permission을 추가로 물어봄
- 앱이 구동 중(백그라운드 말고) 일 때 Location을 사용할 것인지
- 혹은 앱이 백그라운드에서 구동 중일 때 Location을 사용할 것인지
- 위 같은 경우, 상태바에서 Location 서비스를 사용 중임을 알려줄 것
- Permission을 추가로 물어봄
- Background System
- 백그라운드 앱 사용 제한 (아마 또한 보안상의 이유인 듯)
- Setting panel
- 앱에서 특정 세팅 패널 기능을 노출 요청할 수 있음
- 만약 와이파이에서 데이터로 스위치 해야 할 경우, 상태바를 내려서 버튼을 누르던가, 아니면 설정에 들어가서 활성화를 시켜줘야 하는 번거로움이 있다. 허나 Android Q에서는 앱이 이러한 상황을 감지하면 상황에 필요한 설정 옵션을 작게 팝업으로 화면에 띄어서 손쉽게 설정을 제어할 수 있다.
- 앱에서 특정 세팅 패널 기능을 노출 요청할 수 있음
노현석 님은 이와 같은 항목들에 대하여 자세하게 설명해 주셨습니다.
개인적으로 정리를 해보자면.. 다크 모드, 코틀린, 네비 바, 프라이버시 정도가 될 것 같군요.
그다음은 도창욱 님의 'Kotlin Under the Hood' 코너였습니다.
코틀린이 어떤 식으로 작동하는지 약간 break down into part 이런 느낌이었는데, 직접 코드를 가지고 분석하는 느낌으로 진행되었습니다.
아직도 백장이 넘어가는 슬라이드를 40분 안에 해야 한다고 말하신 게 기억에 남는군요. ㅋㅋ
아무튼 "코틀린 코드는 자바 VM에서 구동되며, 자바로 자동 변환이 가능하기에, 서로 스위치 해가면서 코드가 자바에서는 어떠한 방식으로 구동되는지 파악할 수 있다."라는 것을 토대로 어느 코틀린 코드는 최적화에 있어서 어떤 식으로 컴파일링 되고, 어떤 식으로 문제가 되는지 짚어주셨습니다.
여기서 그 코드들을 다 짚어주기가 힘드니, 도창욱 님께서 남겨주신 링크를 여기다가 뿌리도록 하겠습니다.
코틀린 개발자분들이라면 도움이 될만한 자료들입니다.
다음은 강경완 님의 Android Accessiblity인데요, 불과 하루 전에 올리신 발표 PPT 동영상을 올려드립니다.
정말 인상 깊은 발표였습니다.
저는 PC 프로그램을 개발할 때, 주로 디자인과 편리성에 중점을 두고 개발을 합니다.
아마 지금까지 접근성을 고려하여 프로그래밍을 진행한 적이 없었는데, 이 분의 발표를 보고 생각이 많이 바뀌게 되었습니다.
사실 구글 측에서는 접근성을 높이기 위해 상당한 개발을 꾸준히 해 두었고, 상당히 쉽게 접근성을 높여주는 코드를 어플에 적용할 수 있었음에도 불구하고, 구글 플레이의 약 78%의 개발자가 접근성을 고려하지 않았다는 것에 놀랐습니다.
또한 무조건 접근성을 높이기 위해 코드를 삽입하는 것은 오히려 사용자에게 혼란을 야기할 수 있기에, 접근성 코드는 많은 생각을 거처 적용해야 한다라는 것 또한 놀랐습니다.
20분이라는 짧은 시간 동안 많은 참석자분들의 생각을 바꿔놓는 강연이었다고 생각되네요.
부디 다른 개발자 분들 또한 이러한 영상을 보시고 많은 시간과 정성을 들여 접근성을 지원해 주었으면 합니다.
저는 아쉽게도 시간이 없어서 강경완 님의 Android Accessiblity를 마지막으로 이벤트를 떠났어야 했었습니다.
모든 섹션을 다 듣지도 못했는데도 이렇게 만족스러운 강의들의 연속이었는데, 심지어 아레는 행사 측에서 제공해준 굿즈들입니다.
5천원의 입장료를 내고 가서 유리컵과 이렇게 귀여운 스티커들을 받아왔습니다.
스티커에는 #io19와 Jetpack, Android Q, Google Cloud, GDG Korea Android와 GDG Viewing Party 스티커 세트가 있었습니다.
다들 하나같이 귀여운 스티커들이라 붙이고 싶어도 아까워서 붙이기가 힘드네요! ㅜㅠ
그리고 가서 받은 유리컵입니다.
찻잎을 넣을 수 있는 쇠 거름막도 들어있었습니다!
심지어 위에는 귀여운 Jetpack 로고도 세겨져 있습니다.
사실 약 천명 정도가 참여하는 I/O Extended 2019 Seoul에 참가하고 싶었지만, 그 즈음에 시험이 있는지라 무리라고 느껴져서 아쉬운 마음에라도 Google I/O '19 Extended in Korea Android에 참가하게 되었습니다.
이런류의 이벤트에 참석하는 것도 처음이고, 참석하기에 내 수준이 너무 낮은가 라는 생각도 했지만, 상당히 즐거운 이벤트였습니다!
구글도 구글이지만 앞으로 다른 IT 회사들의 이벤트에도 참여해보고 싶네요.