HIG 읽기 - Accessing User Data

2dubu·2022년 4월 21일
2

HIG 읽기

목록 보기
6/13
post-thumbnail

오역이 있을 수 있습니다! 영문 문서를 기본으로 하고 이 글은 참고하는 느낌으로 봐주시면 좋을 것 같습니다. 😊

Human Interface Guidelines - Accessing User Data

Accessing User Data and Resources

User privacy is paramount. To help people trust your app, it’s crucial to be transparent about the privacy-related data and resources you require and how you use them. For example, you must request permission to access:

  • Personal data, including location, health, financial, contact, and other personally identifying information
  • User-generated content like emails, messages, calendar data, contacts, gameplay information, Apple Music activity, HomeKit data, and audio, video, and photo content
  • Protected resources like Bluetooth peripherals, home automation features, Wi-Fi connections, and local networks
  • Device capabilities like camera and microphone

사용자 개인 정보가 가장 중요합니다. 사용자들이 당신의 앱을 신뢰하도록 돕기 위해서는 사용자가 필요로 하는 개인 정보 관련 데이터 및 리소스와, 데이터의 사용처를 투명하게 밝하는 것이 중요합니다. 예를 들어, 다음과 같은 액세스 권한을 요청해야 합니다.

  • 위치, 건강, 금융, 연락처 및 개인 식별 정보를 포함한 개인 데이터
  • 이메일, 메시지, 캘린더 데이터, 연락처, 게임 플레이 정보, 애플 뮤직 활동, HomeKit 데이터, 오디오, 비디오, 및 사진 콘텐츠와 같은 사용자 생성 콘텐츠
  • 블루투스 주변기기, 집 자동화 기능, 와이파이 연결 및 로컬 네트워크와 같은 보호된 리소스
  • 카메라와 마이크와 같은 장치 기능

IMPORTANT
Beginning in iOS 14.5 and iPadOS 14.5, you must use the AppTrackingTransparency framework to request the user’s permission if you want to track them or access their device’s advertising identifier. To learn more, see User Privacy and Data Use.

iOS 14.5와 iPadOS 14.5 부터 추적하거나 디바이스의 광고 식별자에 액세스하려면 AppTrackingTransparency 프레임워크를 사용해서 사용자 권한을 요청해야 합니다. 자세한 내용은? User Privacy and Data Use

When you submit a new or updated app, you must provide details about your privacy practices and the privacy-relevant data you collect so the App Store can display the information on your product page. (You can manage this information at any time in App Store Connect.) People use the privacy details on your product page to make an informed decision before they download your app. To learn more, see App privacy details on the App Store.

새로운 앱이나 업데이트 된 앱을 제출할 때 앱스토어가 제품 페이지에 정보를 표시할 수 있도록 개인 정보 보호 관행 및 수집하는 프라이버시 관련 데이터에 대한 세부 정보를 제공해야 합니다. (AppStore Connect에서 이 정보를 언제든지 관리할 수 있습니다.) 사용자는 제품 페이지의 프라이버시 세부 정보를 확인해 앱을 다운로드하기 전에 결정을 내릴 수 있습니다. 자세한 내용은? App privacy details on the App Store


앱 스토어의 제품 페이지는 사람들이 앱을 다운로드하기 전에 앱의 프라이버시 관행을 이해하는 데 도움이 됩니다.


Requesting Access Permission

Before you can use user data or protected resources, you must get people’s permission to do so.

The system provides a standard alert that lets people view your request to access their private information or protected resources. You supply a description of why your app needs the items, and the system displays this description in the alert. People can also view your description — and update their choice — in Settings > Privacy.

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

시스템은 사용자의 개인 정보 또는 보호된 리소스에 대한 액세스 요청을 볼 수 있는 표준 알림을 제공합니다. 앱에 항목이 필요한 이유에 대한 설명을 입력하면, 시스템이 알림에 표시합니다. 또한 사용자들은 설정 > 개인 정보 에서 설명을 보고 선택한 내용을 업데이트할 수 있습니다.

Request permission only when your app clearly needs access to the data or resource. It’s natural for people to be suspicious of a request for personal information or access to a device capability, especially if there’s no obvious need for it. Ideally, wait to request permission until people actually use an app feature that requires access. For location requests, using the location button lets you give people an in-the-moment way to share their location; for guidance, see Using the Location Button.

앱에서 데이터 또는 리소스에 대한 액세스가 필요한 경우에만 사용 권한을 요청하세요. 장치 기능에 대한 명백한 필요성이 없는 경우 개인 정보 요청이나 액세스에 대해 사람들이 의심을 갖는 것은 당연합니다. 사용자가 실제로 액세스해야 하는 앱 기능을 사용할 때까지 권한 요청을 기다리는 것이 이상적입니다. 위치 요청의 경우 위치 버튼을 이용해 사용자에게 사용자의 위치를 즉시 공유할 수 있는 방법을 제공할 수 있습니다. 자세한 정보는? Using the Location Button

Request permission at launch only when the data or resource is necessary for your app to function. People are less likely to be bothered by a launch-time request when it’s obvious why your app needs the information. If you want to perform app tracking as soon as people launch your app, you must display the system-provided alert before you collect any tracking data (for more guidance, see Clarifying Tracking Requests).

앱이 작동하기 위해 데이터 또는 리소스가 필수적인 경우에만 앱 실행 시 권한을 요청하세요. 앱에 사용자의 정보가 필요한 이유가 분명할 때, 사용자들이 launch-time request로 인해 방해를 받을 가능성이 적습니다. 만약 앱을 실행하는 즉시 앱 추적을 수행하려면 추적 데이터를 수집하기 전에 시스템에서 제공한 알림을 표시해야 합니다. (자세한 내용은? Clarifying Tracking Requests)

Write copy that clearly describes how your app uses the data or resource you’re requesting. The standard alert displays your copy (called a purpose string or usage description string) after your app name and before the buttons people use to grant or deny their permission. Aim for a brief, complete sentence that’s straightforward, specific, and easy to understand. Use sentence-style capitalization, avoid passive voice, and include a period at the end. For developer guidance, see Requesting Access to Protected Resources and App Tracking Transparency.

요청한 데이터를 앱에서 어떻게 사용하는지에 대한 명확한 문구를 제공하세요. 표준 알림은 사용자들이 권한을 부여하거나 거부하는데 사용하는 버튼 앞에 사본(목적 문자열 또는 사용 설명 문자열)을 표시합니다. 간단하고 구체적이며 이해하기 쉬운 짧고 완전한 문장을 목표로 하세요. 대문자 문자 형식을 사용하고, 수동태를 피해야 하며 문장의 마지막에 마침표를 포함하세요. 개발자를 위한 자세한 내용은? Requesting Access to Protected Resources, App Tracking Transparency

다음은 표준 시스템 알림의 몇가지 예 입니다. 😉


Displaying a Custom Screen Before a Permission Alert

Ideally, people already know why you’re requesting their permission based on context. If it’s essential to provide additional details, you can display a custom screen before the system alert appears. The following guidelines apply to custom screens that display before system alerts that request permission to access protected data and resources, including camera, microphone, location, contact, calendar, and tracking.

이상적으로, 사람들은 이미 상황에 따라 권한을 요청하는 이유를 알고 있습니다. 추가 세부 정보를 제공해야 하는 경우 시스템 경고가 표시되기 전에 커스텀 화면을 표시할 수 있습니다. 다음 지침은 카메라, 마이크, 위치, 연락처, 달력 및 추적을 포함한 보호된 데이터 및 리소스에 대한 액세스 권한을 요청하는 시스템 경고 이전에 표시되는 커스텀 화면에 적용됩니다.

Include only one button and make it clear that it opens the system alert. People can feel manipulated when a custom screen also includes a button that doesn’t open the alert, because the experience diverts them from making their choice. Another type of manipulation is using a term like “Allow” to title the custom screen’s button. If the screen’s button seems similar in meaning and visual weight to the allow button in the alert, people can be more likely to choose the alert’s allow button without meaning to. Use a term like “Continue” or “Next” to title your custom screen’s single button, clarifying that its action is to open the system alert.

버튼을 하나만 포함하고 시스템 경고가 열리도록 하세요. 커스텀 화면에도 경고를 열지 않는 버튼이 포함되어 있을 때 사용자들은 조종당하고 있다고 느낄 수 있는데, 그 이유는 그 경험이 그들의 선택을 방해하기 때문입니다. 또 다른 유형의 조작은 "허용"과 같은 용어를 사용해 커스텀 화면의 버튼에 제목을 붙이는 것입니다. 화면의 버튼이 알림의 허용 버튼과 의미와 시각적 가중치가 비슷해 보일 경우, 사람들은 의미 없이 알림의 허용 버튼 선택할 가능성이 더 높습니다. "계속" 또는 "다음"과 같은 용어를 사용해 사용자 지정 화면의 단일 버튼에 제목을 지정하고 해당 버튼의 작업이 시스템 경고를 여는 것임을 명확히 하세요.

Don’t add additional actions to your custom screen. For example, don’t provide a way for people to leave the screen without viewing the system alert, such as by offering an option to close or cancel.

커스텀 화면에 추가 작업을 추가하지 마세요. 예를 들어, 닫기 또는 취소 옵션을 제공하는 것 처럼 사람들이 시스템 알림을 보지 않고 화면을 떠날 수 있는 방법을 제공하지 마세요.


Clarifying Tracking Requests

App tracking is a sensitive issue. In some cases, it might make sense to display a custom screen that clearly describes the benefits of tracking.

앱 추적은 민감한 문제입니다. 경우에 따라 추적의 이점을 명확하게 설명하는 커스텀 화면을을 표시하는 것이 좋습니다.

Never precede the system-provided alert with a custom screen that could confuse or mislead people. People sometimes tap quickly to dismiss alerts without reading them. A custom messaging screen that takes advantage of such behaviors to influence choices will lead to rejection by App Store Review. For additional guidance, see Displaying a Custom Screen Before a Permission Alert.

사용자를 혼란스럽게 하거나 오도할 수 있는 커스텀 화면으로 시스템 경고를 제공하지 마세요. 사람들은 때때로 알림을 읽지 않고 무시하기 위해 빠르게 탭합니다. 이러한 행동을 이용하여 선택에 영향을 미치는 커스텀 메시지 화면은 App Store 검토에서 거부될 것입니다. 자세한 내용은? Displaying a Custom Screen Before a Permission Alert

There are several prohibited custom-screen designs that will cause rejection. Some examples are offering incentives, displaying a screen that looks like a request, displaying an image of the alert, and annotating the screen behind the alert (shown below). For guidance, see App Store Review Guidelines: 5.1.1 (iv).

거부 반응을 일으킬 수 있는 몇 가지 금지된 커스텀 화면 구조가 있습니다. 몇 가지 예로 인센티브 제공, 요청처럼 보이는 화면 표시, 경고 이미지 표시, 경고 뒤에 있는 화면 주석(아래 이미지 참고)등이 있습니다. 자세한 내용은? App Store Review Guidelines: 5.1.1 (iv)

이미지가 많아 링크로 대체할게요!! 이미지 보러가기


Using the Location Button

In iOS 15 and later, Core Location provides a button so people can grant your app temporary authorization to access their location at the moment a task needs it. Although a location button’s appearance can vary to match your app’s UI, it always communicates the action of location sharing in a way that’s instantly recognizable.

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


The location button grants your app temporary authorization to request the device location. If your app has no authorization status, tapping the location button has the same effect as when a person chooses Allow Once in the standard alert. If people previously chose While Using the App, tapping the location button doesn’t change your app’s status. For developer guidance, see LocationButton (SwiftUI) and CLLocationButton (Swift).

위치 버튼은 앱에 디바이스 위치를 요청할 수 있는 임시 권한을 부여합니다. 앱에 권한 부여 상태가 없는 경우 위치 위치 버튼을 누르면 표준 알림에서 한 번 허용을 선택할 때와 동일한 효과가 있습니다. 이전에 사람들이 "앱을 사용 중일 때"를 선택한 경우 위치 버튼을 눌러도 앱 상태가 변경되지 않습니다. 개발자 지침 LocationButton (SwiftUI), CLLocationButton (Swift)

The first time people open your app and tap a location button, the system displays a standard alert. The alert helps people understand how using the button limits your app’s access to their location, and reminds them of the location indicator that appears when sharing starts.

사용자가 처음으로 앱을 열고 위치 버튼을 누르면 시스템에 표준 알림이 표시됩니다. 이 알림은 사용자가 버튼을 사용하여 자신의 위치에 대한 앱 액세스를 제한하는 방법을 이해하는 데 도움이 되며 공유를 시작할 때 나타나는 위치 표시기를 알려줍니다.

After people confirm their understanding of the button’s action, they simply tap the location button when they want to give your app one-time permission to access their location. Although each one-time authorization expires when people stop using your app, they don’t need to reconfirm their understanding of the button’s behavior.

사용자가 단추의 동작에 대한 이해를 확인한 후 앱에 한 번 자신의 위치에 액세스할 수 있는 권한을 부여하고 싶을 때 위치 버튼을 누르기만 하면 됩니다. 비록 사람들이 당신의 앱 사용을 중단하면 각각의 일회성 인증이 만료되지만, 그들은 버튼의 동작에 대한 그들의 이해를 재확인할 필요는 없습니다.

Consider using the location button to give people a lightweight way to share their location for specific app features. For example, your app might help people attach their location to a message or post, find a store, or identify a building, plant, or animal they’ve encountered in their location. If you know that people often grant your app Allow Once permission, consider using the location button to help them benefit from sharing their location without having to interact with the alert.

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

Consider customizing the location button to harmonize with your UI. Specifically, you can:

  • Choose the system-provided title that works best with your feature, such as “Current Location” or “Share My Current Location”
  • Choose the filled or outlined location glyph
  • Select a background color and a color for the title and glyph
  • Adjust the button’s corner radius

UI와 조화를 이루도록 위치 버튼을 커스터마이징하는 것을 고려하세요. 구체적으로 다음을 수행할 수 있습니다.

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

To help people recognize and trust location buttons, other visual attributes aren’t customizable. The system also ensures a location button remains legible by warning you about problems like low-contrast color combinations or too much translucency. In addition to fixing such problems, you’re responsible for making sure the text fits in the button — for example, button text should fit without truncation at all accessibility text sizes and when translated into other languages.

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

IMPORTANT
If the system identifies consistent problems with your customized location button, it won’t give your app access to the device location when people tap it. Although such a button can perform other app-specific actions, people may lose trust in your app if your location button doesn’t work as they expect.

시스템이 커스터마이징 된 버튼의 일관된 문제를 식별하면 사용자들이 탭할 때 장치 위치에 대한 액세스 권한이 부여되지 않습니다. 이러한 버튼은 다른 앱 관련 작업을 수행할 수 있지만 위치 버튼이 예상대로 작동하지 않으면 앱에 대한 신뢰를 잃을 수 있습니다.


Using the Microphone in a ShazamKit App

ShazamKit enables audio recognition by matching an audio sample against the ShazamKit catalog or a custom audio catalog. In iOS 15 and later, apps can use ShazamKit to enable features like:

  • Enhancing app experiences with graphics that correspond with the genre of currently playing music
  • Making media content accessible to people with hearing disabilities by providing closed captions or sign language that syncs with the audio
  • Synchronizing in-app experiences with virtual content in contexts like online learning and retail

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

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

If you need the device microphone to get audio samples for your app to recognize, you must request access to it. As with all types of permission requests, it’s important to help people understand why you’re asking for access; for guidance, see Requesting Access Permission.

앱이 인식할 오디오 샘플을 가져오기 위해 디바이스 마이크가 필요한 경우 디바이스에 대한 액세스 권한을 요청해야 합니다. 모든 유형의 권한 요청과 마찬가지로 사용자가 액세스를 요청하는 이유를 사람들이 이해할 수 있도록 돕는 것이 중요합니다. 자세한 내용은? Requesting Access Permission


After you receive permission to access the microphone for features that have ShazamKit enabled, follow these guidelines.

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

Stop recording as soon as possible. When people allow your app to record audio for recognition, they don’t expect the microphone to stay on. To help preserve privacy, only record for as long as it takes to get the sample you need.

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

Let people opt in to storing your app’s recognized songs to their iCloud library. If your app can store recognized songs to iCloud, give people a way to first approve this action. Even though both the Music Recognition control and the Shazam app show your app as the source of the recognized song, people appreciate having control over which apps can store content in their library.

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

For developer guidance, see ShazamKit.

개발자를 위한 지침은? ShazamKit


느낀점

내용이 생각보다 많이 길어서 조금 오래 걸렸다. 기다리신 분이 있을진 모르겠지만..ㅎ
애플은 사용자의 개인정보를 아주 중요하게 여긴다. 애플은 사용자가 앱에 대한 신뢰를 유지하기 위해서 앱에서 사용되는 개인정보 데이터를 투명하게 밝힐 필요가 있다고 강조한다. 보안 짱짱 애플!

이 부분에서 리젝을 많이 당한다고 들었었는데 잘 읽고 조심해야겠다.

번역하면서 몰랐던 영단어들을 quizlet이라는 곳에 정리해두었어요. HIG 읽으면서 영어 실력까지 키우고 싶은 분들에게 도움이 됐으면 좋겠어요!

수정해야 할 부분이 있다면 알려주세요!
읽어 주셔서 감사합니다. 🙂

profile
iOS Developer 👶🏻

0개의 댓글