ios-library: v15.0.1 upgrading from v14 'DeepLinkDelegate' is ambiguous for type lookup in this context

Preliminary Info

What Airship dependencies are you using?

Airship 15.0.1

What are the versions of any relevant development tools you are using?

Xcode 13.0

Report

What unexpected behavior are you seeing?

Receiving an error message when attempting to conform UIApplicationDelegate to DeepLinkDelegate - “‘DeepLinkDelegate’ is ambiguous for type lookup in this context”. I cannot use Airship.DeepLinkDelegate either as Airship is a concrete class, so then receive the message “DeepLinkDelegate is not a member type of class ‘Airship.Airship’”. There are also no other classes etc. that conflict with this name in my project.

What is the expected behavior?

No error, able to conform to the protocol.

What are the steps to reproduce the unexpected behavior?

Attempt to conform UIApplicationDelegate to DeepLinkDelegate.

Do you have logging for the issue?

No.

About this issue

  • Original URL
  • State: closed
  • Created 3 years ago
  • Comments: 15 (9 by maintainers)

Most upvoted comments

Apptimize issue should be fixed in 3.5.3

We are going to release SDK 16 hopefully this week where we change the module import for Cocoapods users to AirshipKit instead of Airship. Everything else will be the same, but it will require some find/replace in a project.

I am not sure why its ambiguous for you, but there is an underlying issue with cocopoads that we introduced where the name Airship class conflicts with the framework… not sure the best way to resolve this without releasing another major SDK release. A quick workaround (hopefully) would be to create a new file with the following:

import Airship

public typealias AirshipDeepLinkDelegate = DeepLinkDelegate

Then use AirshipDeepLinkDelegate instead of DeepLinkDelegate. I will discuss with the team the best path forward for us. It will most likely be either to rename the module for cocopoads to something like AirshipFramework or to revert the name of Airship back to UAirship. Sorry for the troubles.