티스토리 뷰
안녕하세요 :) Zedd입니다.
전 몰랐는데;;; 트위터가 IDFA로 조금 핫하더라구요.
제곧내고, 설명을 시작하겠습니다.
제목 관련 내용은 Q8번으로 가시면 됩니다!
Q1 : IDFA가 뭐야?
A : "ID for Advertisers". 광고 식별자입니다.
Q2 : ADID는 뭐지..?
A : "Advertising ID". 광고 식별자입니다.
Q3 : 둘 다 광고 식별자? 그럼 IDFA랑 ADID의 차이점이 뭐야?
A : ADID -> Android 광고 식별자 / IDFA -> iOS 광고 식별자
두 플랫폼에서 부르는 이름이 다른거고 둘다 똑같습니다.
그러니 iOS에서 ADID라고 해도 찰떡같이 알아들으시면 됩니다.
(저는 iOS개발을 하고 있으니..IDFA로 말하겠습니다!)
Q4 : IDFA어떻게 가져와?
A :
import AdSupport
ASIdentifierManager.shared().advertisingIdentifier.uuidString // IDFA
// AAAAAA-BBB-BBBB-BBBBB-BBBBBBBBB
Q5 : 이 광고 식별자로 뭐 할 수 있어?
A : 이 식별자는 Apple에서 사용자 기기에 할당한 임의의 식별자에요.
사용자를 추적하고 식별하는데 사용됩니다. 광고주는 이를 사용하여 맞춤형 광고를 제공 할 수 있어요.
물론!! 누군지는 당연히 알 수 없어요.
위 그림이 가장 이해가 잘 될 것 같아서 가져왔습니다!
Q6 : 그렇구나..ㅠㅠㅠ..좀 무서운걸..이거 내 개인정보자나..내가 한 행동들이 다 남는거 아냐
A : 개인정보는 아닙니다.
설정의 개인 정보 보호 > 하단의 광고에 들어가면 "광고 식별자 재설정"이라는 것이 있습니다. (위 그림은 iOS 14이전입니다.)
사용자가 바꿀 수 있기 때문에 개인정보로 인식하지 않는다고해요.
자세한 내용은 www.blog.adbrix.io/post/adid-idfa의 '광고ID'는 개인정보인가?부분을 읽어보시는 것을 추천드립니다!
Q7 : 광고 식별자 주고싶지 않아!
A :
iOS 14 이전 - "광고 추적 제한"을 on하면 됩니다.
iOS 14 - "앱이 추적을 허용하도록 허용"을 off하면 됩니다.
import AdSupport
ASIdentifierManager.shared().advertisingIdentifier.uuidString // IDFA
// 00000000-0000-0000-0000-000000000000
이렇게 하면 IDFA가 00000000-0000-0000-0000-000000000000으로 나오게 됩니다.
(iOS 14이전) 참고로 광고 추적 제한이 on/off인지 판별하는 코드는
import AdSupport
ASIdentifierManager.shared().isAdvertisingTrackingEnabled
입니다. 위 값이 true이면 광고 추적 제한이 "꺼져있는거고", false이면 광고 추적 제한이 "켜져있는것"입니다.
물론 이건 iOS 14이전이구요. iOS 14+부터는 isAdvertisingTrackingEnabled은 deprecate되었습니다.
그럼 iOS 14이상에서는
이 값 어떻게 얻어오냐?
뒤에서 예제코드와 함께 보여드릴게요.
Q8 : ;;iOS14에서 뭐가 바뀐거야?
A : 요약을 먼저 하자면..
iOS 14이전에는 IDFA값을 그냥 가져올 수 있었습니다.
물론 사용자가 광고 추적 제한을 on시켜 식별자를 000~으로 만들거나
광고 식별자 재설정을 눌러 재설정할 수 있었지만...
굳이 거기까지 들어가서 그렇게 하진 않았죠.
iOS 14, iPadOS 14, tvOS 14에서 기기의 광고 식별자에 접근하려면 AppTrackingTransparency프레임워크를 통해 사용자의 권한을 받아야합니다.
사용자가 동의를 거부하면 IDFA를 사용 할 수 없게 됩니다.
또한, 앱 별로 관리 할 수 있습니다.
Q9: 저 권한 요청 어떻게해?
A :
1. info.plist에 NSUserTrackingUsageDescription를 추가해줍니다.
2. 권한 요청.
⚠️ AppTrackingTransparency 프레임워크는 iOS14+만 사용 할 수 있습니다.
이제 실행하게되면,
이러한 alert이 뜨게 됩니다.
이제 설정에 가보겠습니다.
iOS13에서는 설정 > 개인정보보호의 가장 하단에 "광고"가 있었고, 그 안에서 광고 추적 제한을 on/off할 수 있었는데요,
그 기능이 "추적"이 되어 위로 올라왔습니다. (가장 하단에는 "Apple 광고"라고 따로 있음)
이제 누르면, 오른쪽 사진처럼 앱별로 추적 관리를 할 수 있게 됩니다.
Q10: 무조건!!!! 무조건 IDFA얻으려면 권한 얻어야해?
A : 다음 목적 중 하나인 경우, 사용자 권한을 얻지 않고도 사용자를 추적할 수 있습니다.
1. 앱의 데이터가 사용자 기기의 third-party데이터에만 연결되고 사용자 또는 기기를 식별할 수 있는 방식으로 기기외부로 전송되지 않는 경우
2. 데이터를 공유하는 "data broker"가 사기탐지, 사기 방지, 보안목적으로만 데이터를 사용하는 경우.
ex) 신용카드 사기 방지를 위해 data broker를 사용하는 경우.
이 부분은 아래 링크를 참고해주세요.
출처 : developer.apple.com/forums/thread/650142
Q11 : AppTrackingTransparency안쓰고 권한 안얻었는데...IDFA얻어지는데?
import AppTrackingTransparency
import AdSupport
class ViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
print(ASIdentifierManager.shared().advertisingIdentifier.uuidString)
}
}
A : 위 코드에서 IDFA가 잘 얻어진다는것이죠?
현재
이렇게 되어있기 때문에 잘 나오는 것입니다.
끄면 00000000-0000-0000-0000-000000000000나와요! (당연히 AppTrackingTransparency 사용 후, 개별 앱에서 꺼도 0000~나옴)
www.adjust.com/ko/blog/what-you-need-to-know-about-the-delay-to-ios-14-ad-tracking-changes/
의 중간쯤에 그림이 나와있으니..참고하시면 좋을 것 같습니다.
Q12 : 바로 적용해야해?
A : 개발자에게 변경시간을 제공하기 위해 앱은 내년 초 부터 사용자 추적 권한을 얻어야 한다고 해요.
한마디로
이 팝업의 강제화 == 2021년 초.
출처 : developer.apple.com/news/?id=hx9s63c5&1599152522
이런 정보는 좀 정확해야 할 것 같아서;; 원문 첨부합니다.
In addition, on iOS 14, iPadOS 14, and tvOS 14, apps will be required to receive user permission to track users across apps or websites owned by other companies, or to access the device’s advertising identifier. We are committed to ensuring users can choose whether or not they allow an app to track them. To give developers time to make necessary changes, apps will be required to obtain permission to track users starting early next year. More information, including an update to the App Store Review Guidelines, will follow this fall.
Apple에서 준비한 자주 묻는 질문란이 있습니다. (하단의 Frequently Asked Questions)
이 부분도 한번 참고하시면 좋을 것 같습니다!
[외신] 페이스북 “애플 iOS14에서 광고 수익 반 토막 날 것” 이런 글도 있네요. 저같아도 당연히 추적 허용 안한다고 누를 듯....
엄청 찾아보면서 하긴 했는데....혹시 글 내용에서 틀린 부분이 있다면 댓글로 알려주시면 감사하겠습니다.
참고:
developer.apple.com/app-store/user-privacy-and-data-use/
convrsion.co/2020/07/07/ios-14-idfa/
www.adjust.com/ko/blog/what-you-need-to-know-about-the-delay-to-ios-14-ad-tracking-changes/
developer.apple.com/documentation/apptrackingtransparency
developer.apple.com/news/?id=hx9s63c5&1599152522
www.blog.adbrix.io/post/adid-idfa
'iOS' 카테고리의 다른 글
iOS ) UIImageView에 CIGaussianBlur를 적용했더니.. (2) | 2020.10.10 |
---|---|
iOS ) UIVisualEffect (Blur, Vibrancy) (0) | 2020.10.09 |
iOS ) Select Photos 권한 작업 (3) - photoLibraryDidChange (0) | 2020.10.01 |
iOS ) removingPercentEncoding (0) | 2020.09.28 |
iOS ) HTML String을 WKWebView에 보여주기 / WKWebView높이를 contentSize로 (0) | 2020.09.26 |
- swift delegate
- np-complete
- 제이슨 파싱
- Git
- IOS
- 회고
- swift tutorial
- github
- actor
- iOS delegate
- Xcode
- swift array
- WKWebView
- swift sort
- Accessibility
- WWDC
- Combine
- Swift
- fastlane
- swift 공부
- np-hard
- 스위프트 문법
- ios 13
- FLUTTER
- 스위프트
- SwiftUI
- swift3
- UIBezierPath
- WidgetKit
- 피아노
- Total
- Today
- Yesterday