Haru's 개발 블로그

[HIG] Accessing User Data and Resources 본문

IOS/HIG(UI,UX)

[HIG] Accessing User Data and Resources

Haru_29 2022. 5. 29. 09:43

Accessing User Data and Resources

사용자 개인 정보는 가장 중요하다

사용자들이 당신의 앱을 신뢰하기위해선 당신이 필요로 하는 사생활 관련 데이터 및 자원과 그것들을 어떻게 사용하는 지를 투명하게 공개하는 것이 중요하다. (ex. 액세스 권한 요청)

  • 위치, 건강, 재무, 연락처 및 기타 개인 식별 정보를 포함한 개인 데이터
  • 이메일, 메시지, 캘린더 데이터, 연락처, 게임 플레이 정보, Apple Music 활동, HomeKit 데이터, 오디오, 비디오 및 사진 콘텐츠와 같은 사용자 생성 콘텐츠
  • Bluetooth 주변 장치, 홈 자동화 기능, Wi-Fi 연결 및 로컬 네트워크와 같은 보호된 리소스
  • 카메라 및 마이크와 같은 장치 기능


Important
iOS 14.5 및 iPad부터 OS 14.5에 시작해서, 앱 추적 투명성 프레임워크를 사용하여 사용자들을 추적하거나 사용자 장치의 광고 식별자에 접근하기를 원한다면 사용자의 허가를 요청해야 한다.

새로운 앱이나 업데이트된 앱을 제출할 때 개인 정보 보호 관행과 수집한 개인 정보 관련 데이터에 대한 세부 정보를 제공해야 앱 스토어가 제품 페이지에 정보를 표시할 수 있다.
(App Store Connect에서 언제든지 이 정보를 관리할 수 있다.)

사람들은 앱을 다운받기 전에 제품 페이지의 개인 정보 정보를 읽은 후, download 결정의 여부를 정한다. 

 

Requesting Access Permission

사용자 데이터 또는 보호된 리소스를 사용하려면 먼저 사용자의 사용 권한을 얻어야 한다.

시스템은 개인 정보 또는 보호된 리소스에 대한 액세스 요청을 볼 수 있는 일반적인 alert를 제공한다.

앱에 항목이 필요한 이유에 대한 설명을 입력하면 시스템이 이 설명을 alert에 표시한다. 또한 사용자들은 설정>개인 정보 에서 설명을 보고 자신의 선택에 따라 업데이트할 수 있다.

 

https://youtu.be/Ihw_Al4RNno

1) Request permission only when your app clearly needs access to the data or resource.

앱에 데이터 또는 리소스에 대한 액세스 권한이 분명히 필요한 경우에만 사용 권한을 요청한다.

개인 정보 요청이나 장치 기능에 대한 액세스에 대해 사용자들이 경계하는 것은 당연하며, 특히 그러한 필요성에 대한 명백한 요구가 없는 경우에는 더욱 그렇다.

이상적으로는 사람들이 실제로 액세스가 필요한 앱 기능을 사용할 때까지 사용 권한을 요청할 때까지 기다린다. 위치 요청의 경우에는 location button을 사용하여 즉시 사용자의 위치를 공유할 수 있게 해준다. 

2) Request permission at launch only when the data or resource is necessary for your app to function.

실행 시 앱이 작동하는 데에 데이터 또는 리소스가 필요한 경우에만 사용 권한을 요청한다.

앱에 정보가 필요한 이유가 분명할 때 사용자들은 요청되는 실행시간에 덜 시달린다. (이유가 타당하면 사용자들이 사용권한 요청때문에 걸리는 시간을 잘 기다릴 수 있다는 뜻 같다.)

사용자들이 앱을 실행하는 즉시 앱 추적을 수행하려면 추적 데이터를 수집하기 전에 시스템에서 제공하는 alert를 표시해야 한다. 

3) Write copy that clearly describes how your app uses the data or resource you’re requesting.

앱에서 요청하는 데이터나 리소스를 사용하는 방법을 명확하게 설명하는 복사본을 작성한다.

standard alert은 사용자의 앱 이름 뒤와 사용자가 권한을 승인하거나 거부할 때 사용하는 button 앞에 사용자의 복사본(purpose string 또는 usage description이라고도 함)을 표시한다.

간단하고 구체적이며 이해하기 쉬운 짧고 완전한 문장을 목표로로 해야한다. capitalization를 사용하고, 수동적인 음성을 피하고, 끝에 마침표를 포함한다.

 

capitalization이 무엇일까?



 

standard system alert의 몇 가지 예

 

 

Displaying a Custom Screen Before a Permission Alert

사용자들은 context에 따라 당신이 자신들의 허락을 요청하는 이유를 이미 알고 있다. 추가 세부 정보를 제공해야 하는 경우, system alert이 발생하기 전에 사용자 지정 화면을 표시할 수 있다.
다음 지침은 보호된 데이터 및 리소스에(카메라, 마이크, 위치, 연락처, 일정관리 및 추적) 액세스할 수 있는 권한을 요청하는 system alert전에 보여지는 사용자 지정 화면에 적용된다.

1. Include only one button and make it clear that it opens the system alert.

하나의 button만 포함하여 system alert이 열리는지 확인한다.

사용자 지정 화면에 경고를 열지 않는 button이 존재할 때 사용자들은 조작되었다고 느낄 수 있다. 이는 사용자들이 직접 선택을 하지 못하게 하기 때문이다.

또 다른 유형의 조작은 "Allow"와 같은 용어를 사용하여 사용자 지정 화면의 button에 제목을 붙이는 것이다.

화면의 button이 alert의 allow button과 의미 및 시각적 무게가 비슷해 보일 경우, 사람들은 의미 없이 경고 허용 단추를 선택할 수 있습니다. "Continue" 또는 "Next"과 같은 용어를 사용하여 사용자 지정 화면의 단일 button에 제목을 붙여 시스템 경고를 여는 작업임을 명확히 합니다.

=> button을 비슷하게 만들어서 사용자가 아무생각없이 허용을 누르게끔 만들지 말라는 말 같다. -> 구분을 주어야한다.

2. Don’t add additional actions to your custom screen.

사용자 지정 화면에 추가적인 action을 덧붙이지 마라.
예를 들어 닫기 또는 취소 옵션을 제공하는 등 system alert을 보지 않고 화면을 나갈 수 있는 방법을 제공하지 마라.

위치 버튼 사용하기

iOS 15 이상에서 핵심 위치는 버튼을 제공하여 사람들이 작업에 필요한 순간에 자신의 위치에 액세스할 수 있는 임시 권한을 앱에 부여할 수 있습니다. 위치 버튼의 모양은 앱의 UI와 일치하도록 다양할 수 있지만 항상 즉시 인식할 수 있는 방식으로 위치 공유 작업을 전달합니다.

위치 버튼은 앱에 기기 위치를 요청할 수 있는 임시 권한을 부여합니다. 앱에 승인 상태가 없는 경우 위치 버튼을 탭 하면 표준 알림에서 한 번 허용 을 선택할 때와 동일한 효과가 나타납니다 .

사람들이 버튼의 동작에 대한 이해를 확인한 후 앱에 자신의 위치에 대한 액세스 권한을 한 번만 부여하고 싶을 때 위치 버튼을 탭하기만 하면 됩니다. 그리고 사람들이 앱 사용을 중단하면 각 일회성 승인이 만료되지만 버튼 동작에 대한 이해를 재확인할 필요는 없습니다.

특정 앱 기능에 대해 위치를 공유할 수 있는 간편한 방법을 제공하려면 위치 버튼을 사용하는 것이 좋습니다. 예를 들어 앱은 사람들이 메시지나 게시물에 위치를 첨부하거나, 상점을 찾거나, 해당 위치에서 만난 건물, 식물 또는 동물을 식별하는 데 도움이 될 수 있습니다. 사람들이 앱에 한 번 허용 권한 을 자주 부여한다는 사실을 알고 있다면 위치 버튼을 사용하여 알림과 상호 작용할 필요 없이 위치를 공유할 수 있는 이점을 고려해야합니다.

UI와 조화를 이루도록 위치 버튼을 사용자 정의하는 것을 고려하십시오. 

  • "현재 위치" 또는 "나의 현재 위치 공유"와 같이 기능에 가장 잘 맞는 시스템 제공 제목을 선택하십시오.
  • 채워지거나 윤곽이 그려진 위치 글리프 선택
  • 제목과 글리프의 배경색과 색상을 선택합니다.
  • 버튼의 모서리 반경 조정

사람들이 위치 버튼을 인식하고 신뢰할 수 있도록 다른 시각적 속성은 사용자 지정할 수 없습니다. 또한 시스템은 대비가 낮은 색상 조합 또는 너무 많은 반투명도와 같은 문제에 대해 경고하여 위치 버튼을 읽기 쉬운 상태로 유지합니다. 이러한 문제를 수정하는 것 외에도 텍스트가 단추에 맞는지 확인해야 합니다. 예를 들어 단추 텍스트는 모든 접근성 텍스트 크기와 다른 언어로 번역될 때 잘림 없이 맞아야 합니다.

중요한시스템에서 사용자 지정 위치 버튼과 관련된 일관된 문제를 식별하는 경우 사람들이 탭할 때 앱에 기기 위치에 대한 액세스 권한이 부여되지 않습니다. 이러한 버튼은 다른 앱별 작업을 수행할 수 있지만 위치 버튼이 예상대로 작동하지 않으면 사람들이 앱에 대한 신뢰를 잃을 수 있습니다.

ShazamKit 앱에서 마이크 사용하기

ShazamKit은 오디오 샘플을 ShazamKit 카탈로그 또는 사용자 지정 오디오 카탈로그와 일치시켜 오디오 인식을 가능하게 합니다. iOS 15 이상에서 앱은 ShazamKit을 사용하여 다음과 같은 기능을 활성화할 수 있습니다.

  • 현재 재생 중인 음악 장르에 맞는 그래픽으로 앱 경험 향상
  • 오디오와 동기화되는 자막 또는 수화를 제공하여 청각 장애가 있는 사람들이 미디어 콘텐츠에 액세스할 수 있도록 합니다.
  • 온라인 학습 및 소매와 같은 맥락에서 가상 콘텐츠와 인앱 경험 동기화

앱이 인식할 오디오 샘플을 가져오기 위해 장치 마이크가 필요한 경우 액세스 권한을 요청해야 합니다. 모든 유형의 권한 요청과 마찬가지로 사용자가 액세스 권한을 요청하는 이유를 이해하도록 돕는 것이 중요합니다. 

ShazamKit이 활성화된 기능에 대해 마이크에 액세스할 수 있는 권한을 받은 후 다음 지침을 따라야합니다.

1. 가능한 한 빨리 녹음을 중지하십시오. 사람들이 앱에서 인식을 위해 오디오를 녹음하도록 허용할 때 마이크가 켜져 있을 것이라고 기대하지 않습니다. 개인 정보를 보호하기 위해 필요한 샘플을 얻는 데 걸리는 시간 동안만 기록하십시오.

2. 사람들이 앱에서 인식한 노래를 iCloud 보관함에 저장하도록 선택합니다. 앱이 인식된 노래를 iCloud에 저장할 수 있는 경우 사람들에게 먼저 이 작업을 승인할 수 있는 방법을 제공하십시오. 음악 인식 컨트롤과 Shazam 앱 모두 앱을 인식된 노래의 소스로 표시하지만 사람들은 라이브러리에 콘텐츠를 저장할 수 있는 앱을 제어할 수 있다는 점을 높이 평가합니다.

 

출처: https://developer.apple.com/design/human-interface-guidelines/ios/app-architecture/accessing-user-data/

'IOS > HIG(UI,UX)' 카테고리의 다른 글

[HIG] Settings  (0) 2022.05.29
[HIG] Navigation  (0) 2022.05.29
[HIG] Modality  (0) 2022.05.29
[HIG]Loading  (0) 2022.05.23
[HIG] Onboarding  (0) 2022.05.23
Comments