IDFA iOS14 возвращает отказ, без отображения всплывающего окна авторизации - PullRequest
2 голосов
/ 09 июля 2020

Я изучаю возможность получения IDFA на iOS 14, я использую iphone 8 +

Я добавил:

<key>NSUserTrackingUsageDescription</key>
<string>App would like to access IDFA for tracking purpose</string>

в Plist

затем выполняю:

let type = ATTrackingManager.trackingAuthorizationStatus;

-> отказано, когда я делаю:

func requestPermission() {
        ATTrackingManager.requestTrackingAuthorization { status in
            switch status {
            case .authorized:
                // Tracking authorization dialog was shown
                // and we are authorized
                print("Authorized")
            
                // Now that we are authorized we can get the IDFA
            print(ASIdentifierManager.shared().advertisingIdentifier)
            case .denied:
               // Tracking authorization dialog was
               // shown and permission is denied
                 print("Denied")
            case .notDetermined:
                    // Tracking authorization dialog has not been shown
                    print("Not Determined")
            case .restricted:
                    print("Restricted")
            @unknown default:
                    print("Unknown")
            }
        }
    }

Но получаю отказ без всплывающего окна.

Вы знаете, что это происходит?

Ответы [ 3 ]

2 голосов
/ 10 июля 2020

В приложении настроек системы есть опция « Разрешить приложениям запрашивать отслеживание », и если она выключена, requestTrackingAuthorization вернет .denied немедленно.

Настройки конфиденциальности
0 голосов
/ 24 августа 2020

Поскольку пользователю отказано в разрешении

Вы можете переместить пользователя на страницу настроек приложения с помощью моего кода

UIApplication.shared.open(URL(string: UIApplication.openSettingsURLString)!, options: [:], completionHandler: nil)
0 голосов
/ 11 июля 2020

Глупый вопрос с моей стороны, вы действительно вызываете функцию? Имейте в виду, что однажды ответят, он больше не появится. Вам придется удалить и установить приложение, чтобы снова представить его

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...