티스토리 뷰
Android Google for Mobile 2018 IO RECAP for Android P (Android P 새로운 기능 소개)
Bㅇㅇker 2018. 6. 29. 00:01
올해 가을에 최종 버전을 배포할 목적을 두고 있는 Android P의 가장 핵심 기능이 무엇일지 공유하겠습니다.
Adaptive Battery
App Standby Buckets
Background Restrictions
Android Vitals
Adaptive Action
App Links
Built-in Intents
Slices
템플릿 제공
인터랙션 디자인 제공
Updatable
Adaptive Battery
배터리 소모를 줄여주도록 도와주는 기능을 제공합니다. 배터리 소모 줄여주도록 도와주는 기능을 크게 총 세 가지로 정리하면 App Standby Buckets
, Background Restrictions
, Android Vitals
로 구분할 수 있습니다.
■ App Standby Buckets
앱을 4가지 버킷으로 나눠서 관리합니다. Activity
, Working set
, Frequent
, Rare
사용자가 당장 사용하지 않은 앱들에 대한 제한이 걸립니다.
현재 사용중인 앱
Working set정기적으로 사용하는 앱
Frequent
종종 사용하나 매일 사용 안하는 앱
Rare
자주 사용하지 않는 앱
■ Background Restrictions
불필요한 백그라운드 사용의 제한을 제안하는 기능 제공합니다. 단 Background Restrictions
을 켜게 되면 Background에서 할 수 있는 작업을 나열하는게 빠를 정도로 제약이 걸립니다. 사용자는 명시적으로 Background Restrictions
을 켜고 끌 수 있습니다.
■ Android Vitals
Android Vitals
통하여 백그라운드 작업 등 배터리를 많이 잡고 있는 것이 아닌지 체크해야 할 수 있습니다. Android Vitals
체크를 통하여 Background Restrictions
의 제약을 최소하게 대비할 수 있게 될 것입니다.
Excessive wakeups
잠들어 있는 디바이스를 깨우는 앱들, 너무 길게 앱을 안꺼지게 잡고 있는 앱을 체크합니다.
Adaptive Action
사용자의 행동패턴을 학습한 머신러닝 기반으로 사용자에게 다음 할 행동(Action)을 미리 예측하여 제안합니다.
■ App Links
스마트폰 디바이스에서 사용자가 특정 단어를 검색
했을 시 사용자가 지금 뭘 하고 싶어하는지 머신러닝 기술로 활용하여 GooglePlay 에 있는 추천 할 App을 미리 예측하여 App Actions을 보여줍니다.
Q. App Links로 추천되는 앱 우선순위 기준이 있을까요?A. 규칙이 있는 것보다 사용자가 가장 잘 사용할 앱을 머신러닝이 판단하여 보여줍니다.
■ Built-in Intents
앱 개발자는 "나의 앱은 000을 원하는 사용자에게 만족할 수 있다." 는 것을 미리 정해놓고 Intent 을 통하여 Built-in Intent
에 등록하면 사용자가 무엇인가 액션 할 때 머신러닝으로 미리 등록된 Built-in Intents 기반으로 로 앱 추천을 합니다.
Slices
2008년 RemoteView 로 위젯을 구성하였으나 자유도가 많았기에 만들기 어려웠으며 일관성도 없었습니다. 이러한 어려움을 총 3가지 큰 특징을 보완하여 제공하고 있습니다.
템플릿 제공
이미 시중에 훌륭한 UI 로 제작된 앱들이 있습니다. 다양한 앱들에서 가장 많이 사용하고 효과적인 UI 을 템플릿 형태로 제공합니다.
인터랙션 디자인 제공
디바이스와 사용자의 행동간의 상호작용을 용이하게 하게하는 디자인을 제공합니다.
Updatable
새로운 버전 및 기능이 있을 때마다 Support Library 로 지속적인 업데이트 제공합니다.
Notification
Notification Style 변화
Messaging Style
로 사용자에게Messaging
한다는 기분을 줄 수 있도록 변경하였습니다.Notification Blocking
유용하지 않은 Notification을 머신러닝 기술로 판단하여 "사용자에게 이 알람 받지 않게 해줄까?" 라고 물어보고 사용자의 의견을 받아서 알림을 확인 못하게 됩니다.
Q. Notification Blocking 은 어떤 기준으로 합니까?
A. Notification Blocking은 Channel을 Block을 합니다. 따라서 중요성에 따른 Channel 을 나눠서 보내는게 좋습니다.
노치 디자인
아이폰 X 만 있는 고유한 노치 디자인으로 생각되었는데 요즘 안드로이드 디바이스에서도 노치를 제공하는 디바이스가 많이지고 있습니다.
앱 개발 시 Hard-Coding Status Bar Height
했을 경우 노치 디바이스에서는 StatusBar
높이를 침범하게 됩니다. 따라서 Hard-Coding Status Bar을 사용 안하는 것을 권장하고 있습니다.
class MyActivity{
void onCreate(){
// toogle fullscreen
view.setSystemUiVisibility(SYSTME_UI_FLAG_FULLSCREEN)
}
}
기타 업데이트 사항
그 밖에 업데이트 사항에 대해서 간단히 4가지로 정리하면 다음과 같습니다.
첫번째, private API 사용 금지를 합니다.
단 모든 private API 사용한 앱을 금지하는 것이 아니라 private API을 Public API 로 대체 가능할 경우 변경할 수 있도록 제공하고 있습니다. 만약 private API 을 public API 대체 불가능한 경우 Blocking App 이 됩니다.
두번째, targetSdkVersion 26 이상으로 올려야 합니다.
세번째, 에뮬레이션 속도 향상 되었습니다.
네번째, ChromeOS 가 생겼습니다.
정리
Google IO 2018 Recap 의 주제인 AI와 웰빙이 접목된 Android P 업데이트 사항을 볼 수 있습니다. Android O 보다 더 많이 배터리 소모 방지 기능에 대한 대응 및 정책 마련이 필요해 보입니다. 또한 기존의 Notification 보다 개선된 UI 에 맞는 컨텐츠 개발이 필요해보이며 무엇보다 노치 디자인 대응이 시급해 보입니다. 앞으로는 노치 디자인을 어떻게 할지 고민하는 디자이너가 많아 질 것으로 예상됩니다. 그만큼 개발자 또한 고민을 하면서 UI 구성할 거 같고요. Andoird P 을 통해 어떤 변화가 있을지 기대가 됩니다.
'프로그래밍 > Android' 카테고리의 다른 글
Android O 백그라운드 실행 제한 예외 항목 (0) | 2018.07.01 |
---|---|
Android O 대응 다른 앱 및 시스템 창에 모달창 띄울 시 주의 사항 (경고 창) (0) | 2018.06.30 |
Android Realm Boswer로 Realm DataBase 확인하기 (0) | 2018.06.26 |
[Kotlin] TodoList 만들기 [2/2] (0) | 2018.06.19 |
Mac에서 Android 디바이스 미러닝 하기 - Vysor (0) | 2018.06.16 |
- 코틀린
- 탁구
- Android
- java
- Android Studio
- 디자인패턴
- flutter
- 고시문헬퍼
- issue
- 안드로이드
- missionchina
- IOS
- push
- 고시문
- DI
- RXjava
- missioon
- view
- 점수판
- MCC
- swift
- 미션차이나센터
- Kotlin
- 패턴
- 알고리즘
- 선교
- 임용고시
- IT
- 스코어헬퍼
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |