Search code examples
iosswiftfacebooknotificationsdeferred

Facebook iOS Deferred link `url` always return `nil`


anyone can help me??, I'm trying to use Deffered link of Facebook with the function:

 AppLinkUtility.fetchDeferredAppLink { (url, error) in ... } 

It doesn't matter which way I put it the code, alway the url is nil

What are the steps necessary to reproduce this issue? Very simple to describe:
1- Login to your Facebook
2- Then Click https://developers.facebook.com/tools/app-ads-helper.
2- Select an app you want to test from drop down.
3- Hit submit.
4- At the bottom you will find 'Deep Link Tester' under Developer Tools.
5- Hit 'Test Deep Link' and in the dialog you can enter your deep link.
6- Select both 'Send Notification' and 'Send Deferred' check marks.
7- Then you will get a notification to your facebook app.
8- Tap in the notification and it is opened the App Store.
9- Install the App through Xcode.

Then in my code I tried at least 5 variants:

For example I tried this:

func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {

        // Set the trackings to true in test mode
        Settings.setAdvertiserTrackingEnabled(true)
        Settings.isAdvertiserIDCollectionEnabled = true
        Settings.isAutoLogAppEventsEnabled = true

        // Initialize the Facebook SDK
        ApplicationDelegate.initializeSDK(nil)

        AppLinkUtility.fetchDeferredAppLink { (url, error) in
            if let url = url {
                print(url)
            }
            print(error as Any)
        }
}

No matter which variant I try, the result is always the same, url = nil

I'm using:

  • Xcode Version: 12.4
  • Swift Version: 5.2
  • Installation Facebook SDK with SPM

I did some search before, and nothing it's working for me:
(NOT WORKINKG).
iOS - Test getting Facebook deferred deep link.

(ALSO NOT WORKING)
How to use Facebook deferred deep linking feature for new installs and to test the same before publishing iOS App to appStore?

(NOT MY CASE)
iOS - Test getting Facebook deferred deep link

(DIFFERENT SITUATION NOW THAT WE HAVE TO IMPLEMENT THE IDFA CONSENT OF THE USER)
Facebook deferred deep link on iOS not working

(WITHOUT ANSWER)
https://developer.apple.com/forums/thread/77046 https://developers.facebook.com/community/threads/304205737647076/?locale=es_LA

SPECIAL NOTE:
This code: ATTrackingManager.requestTrackingAuthorization(completionHandler:) never shows the Prompt and always return denied in a real device(iPhone 12 and iPhone SE(2nd Generation) iOS 14.4 both). I don't know if that matters with this issue, but I think that it's important to mention that


Solution

  • Apparently the issue it's with IDFA that always is 00000000-0000-0000-0000-000000000000, hopefully when this problem is solved this issue disappear.
    From the Facebook team:
    "Thanks for your response. The returned appLinkData is always null since the ads id is invalid."

    https://developers.facebook.com/support/bugs/349628616375797/

    UPDATE:

    The issue it's of Facebook, more details here: https://developers.facebook.com/bugs/278254417309196