Can't access class from custom dynamic framework (Swift) Can't access class from custom dynamic framework (Swift) ios ios

Can't access class from custom dynamic framework (Swift)


Found the answer. I had to prefix my class declaration with the public modifier. So this:

class XYZ {}

became:

public class XYZ {}

And, as always, trashing the ~/Library/Developer/Xcode/DerivedData folder fixed any minor complications.


If your Framework's class also contained Static and Instance Member functions you also need some more public keywords adding.

// set the Framework class to Publicpublic class FrameworkHello{     // set the initializer to public, otherwise you cannot invoke class   public init() {     }   // set the function to public, as it defaults to internal   public static func world() {         print("hello from a static method")   }}

Now you can access this via your Swift code or with lldb:

(lldb) po FrameworkHello.world()hello from a static method

This ensures the Framework's Symbols are accessible in a Release build.