What's new in Screen Time API - iOS

PM077·2023년 4월 29일
0

iOS

목록 보기
20/21

https://developer.apple.com/videos/play/wwdc2022/110336/
WWDC22의 "What's new in Screen Time API"를 보고 느낀점 서술

개요

ScreenTime 담당 개발자 MaryAhsley Etefia가 이 API 대해서 설명을 한다. 현재 코로나때문에 IT산업은 디지털 건과 생산적인 도구에 많은 수요를 보여줬다.

작년에 ScreenTime API가 출시되었다. 새로운 유저가 아이와 기계간의 관계를 관리할 수 있도록 해주는 API 인것이다. 이 의도가 아니지만 많은 사람들이 다양한 방법으로 이 API를 사용했다. 우선적으로 iOS15 업데이트에서는 크게 3가지를 다뤘다.
1. Family Control Authorization
2. Managed Setting Restrictions
3. Device Activity Usage

이전 스크린타임API 요약 (iOS 15)

1. Family Control Authorization

  • 스크린타임 API 접근권한 설정을 관리한다
  • 스크린타임 API의 적용을 제거하거나 우회하는 방법을 방지한다
  • 가족이 사용하는 앱의 보안요소가 들어가있는 토큰을 보존시킨다.

2. Managed Setting Restrictions

  • 지속적으로 기기를 제한하는 걸 설정
  • 웹 콘텐츠 필터링 제공
  • 커스텀UI를 사용해 앱이나 웹사이트를 막음

3. Device Activity Usage

  • DeviceActiviy 스케줄의 시작과 끝에 코드를 실행시킬 수 있음
  • 사용량이 한계점에 다다르면 코드를 실행 시킬 수 있음

이제 iOS16에서는 새로운 기능들 뿐만 아니라 더 강화되어서 유저친화적으로 바뀌고 있다. 이를 애플에서 직접 만든 Worklog 이라는 데모 앱을 통해 설명을 해준다.

Worklog을 통한 예시(iOS 16)

1. Family Control Authorization

iOS15에서는 아이들 접근 권한 설정과 iCloud 인증관리만 가능 했다. 보호자의 관리의 목적으로 나온 이 ScreenTime API는 이제 개인이 스스로 관리 할 수 있는 기능으로도 출시가 되었다. 다양한 앱을 개인이 관리할 수 있으나 앱 제거 방지기능과 iCloud 로그아웃 제한 기능은 없다.

AuthorizationCenter를 통해서 ScreenTime 권한 설정을 할 수 있다. 최초 앱 실행 시 권한이 없다면 권한을 받도록 해주는 도구이며 권한을 받은 이후에는 자동으로 권한을 뒷단에서 받고 스크린타임API를 실행시킨다. 권한을 주게 되었다면 설정->스크린타임 부분에 어떤 제한을 줄 지 나와있다.

2. Managed Setting Restrictions

iOS15에 비해 Managed Setting Store 부분에서 많은 개조가 일어났다. 이는 데이터스토어이며 현재 유저의 기기 설정을 적용시키는 부분이다. iOS15에서는 프로세스 당 하나의 Managed Setting Store를 사용할 수 있었다. 이러한 제약사항 때문에 기기 설정이 힘들었었다.

현재 iOS16부터는 하나의 프로세스 당 50개의 Managed Setting Store를 고유 이름을 통해 만들 수 있으며 앱과 앱과 관련된 것들을 동일한 설정 하에 둘 수 있다. 또한 하나의 동작으로 모든 세팅을 지울 수 있는 도구 또한 제공된다.

Worklog을 통해서 본다면 위의 Family Control Authorization을 통해 권한을 준 후 Gaming ManagedSettingStore를 생성한다. 이는 게임 관련된 웹사이트를 제한할 것이다. 이와 같이 social부분에서도 막을 수 있으며 시간 설정 또한 가능하다. 시간이 다지나면 clearAllSettings()으로 설정을 초기화 시켜 다시 제한을 풀어준다. 다른 설정과 충돌이 일어날 걸 우려한다면 스크린타임이 어떤 설정보다 우위에 있기에 설정 된다.

3. Device Activity Usage

iOS15에서는 우선 timing windows 시작과 끝 그리고 앱과 웹사이트의 사용량에 반응하게끔 개발이 되었다. iOS16에서 추가된 것은 SwiftUI를 통해 사용량을 커스텀해서 보여줄 수 있다. 또한 어떤 데이터를 보여줄지를 정할 수 있으며 유저의 보안을 추가하였다.

profile
PM/PO

0개의 댓글