{"id":898,"date":"2022-01-04T14:52:22","date_gmt":"2022-01-04T20:52:22","guid":{"rendered":"https:\/\/www.futuresteve.com\/?p=898"},"modified":"2022-01-04T14:52:27","modified_gmt":"2022-01-04T20:52:27","slug":"attrackingmanager-error-in-ios-15","status":"publish","type":"post","link":"https:\/\/www.futuresteve.com\/index.php\/2022\/01\/04\/attrackingmanager-error-in-ios-15\/","title":{"rendered":"ATTrackingManager error in iOS 15"},"content":{"rendered":"\n<p>If you&#8217;re running into an error where your Ad Tracking request manager isn&#8217;t showing up after you update to iOS 15, here&#8217;s what you do.<\/p>\n\n\n\n<p><\/p>\n\n\n\n<p>You probably have some code that looks similar to this:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>    if (@available(iOS 14, *)) {\n        &#91;ATTrackingManager requestTrackingAuthorizationWithCompletionHandler:^(ATTrackingManagerAuthorizationStatus status) {\n\n}\n<\/code><\/pre>\n\n\n\n<p>This is Objective-C&#8230; sorry for the formatting.<\/p>\n\n\n\n<p><\/p>\n\n\n\n<p>If you had this code in <strong>didFinishLaunchingWithOptions<\/strong>, that&#8217;s the issue.  You should move it to <strong>applicationDidBecomeActive<\/strong> instead.   I have that whole code block of requesting this in it&#8217;s own method, so changing where it was called was pretty straightforward.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>If you&#8217;re running into an error where your Ad Tracking request manager isn&#8217;t showing up after you update to iOS 15, here&#8217;s what you do. You probably have some code that looks similar to this: This is Objective-C&#8230; sorry for the formatting. If you had this code in didFinishLaunchingWithOptions, that&#8217;s the issue. You should move [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[22,364,228,17,10],"tags":[367,294],"class_list":["post-898","post","type-post","status-publish","format-standard","hentry","category-apple","category-ios","category-ipad","category-iphone","category-programming","tag-ad-tracking","tag-ios"],"_links":{"self":[{"href":"https:\/\/www.futuresteve.com\/index.php\/wp-json\/wp\/v2\/posts\/898","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.futuresteve.com\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.futuresteve.com\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.futuresteve.com\/index.php\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.futuresteve.com\/index.php\/wp-json\/wp\/v2\/comments?post=898"}],"version-history":[{"count":1,"href":"https:\/\/www.futuresteve.com\/index.php\/wp-json\/wp\/v2\/posts\/898\/revisions"}],"predecessor-version":[{"id":899,"href":"https:\/\/www.futuresteve.com\/index.php\/wp-json\/wp\/v2\/posts\/898\/revisions\/899"}],"wp:attachment":[{"href":"https:\/\/www.futuresteve.com\/index.php\/wp-json\/wp\/v2\/media?parent=898"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.futuresteve.com\/index.php\/wp-json\/wp\/v2\/categories?post=898"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.futuresteve.com\/index.php\/wp-json\/wp\/v2\/tags?post=898"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}