Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
135 views
in Technique[技术] by (71.8m points)

ios - Framework of Objective c. Need to add swift files to the framework

I have gone through many questions on Stack Overflow and Apple documentation, and many more related to it. Not able to solve it. Thanks in advance for any help. Done the following steps:

Framework:

  • I have Objective-C framework
  • Adding Swift files to the framework
  • Bridge files do not go with framework, but we do have $(SWIFT_MODULE_NAME)-Swift.h file generated. Framework needs <ProductName/ProductModuleName-Swift.h>
  • Swift class should be public (tried with @objc as well)
  • Swift method should have @objc (tried with setting public as well)
  • Framework header file should be public at Identity attributer

Usage:

  • Need to import the above file in any .m file where we want to use Swift files in Objective-C code.
  • Forward declaration of Swift class in Objective-C class
  • Defines Module in build setting should be set to yes
  • Always add embed swift standard libraries to yes in build settings

Still getting error for Swift class:

framework's header.h is not found in umbrella header.

Note: ProductModuleName-Swift.h file is recognized in header file but not in implementation files. But I am able to use Swift classes in objective c classes.

Update: Error is when I am creating the framework with git repository. Without repo I am able to build my framework successfully. As per my understanding git should not create any issue. Digging into it.

question from:https://stackoverflow.com/questions/65864760/framework-of-objective-c-need-to-add-swift-files-to-the-framework

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)
Waitting for answers

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...