"File Not Found" in Bridging Header When Importing Objective-C Frameworks into Swift Project by Cocoapod

“file not found” in Bridging Header when importing Objective-C frameworks into Swift project by CocoaPod

My solution is :

Do not import the ObjC framework in bridging header file, just import the framework in the files in which the framework is needed. just like:

import xxxframework

CocoaPods Bridging Header file not found

When using the use_frameworks! instruction in Cocoapods, the bridging header is not required for importing Objective-C pods in Swift.

Simply set your desired pods into your podfile:

#Uncomment this line to define a global platform for your project
platform :ios, '9.0'
#Uncomment this line if you're using Swift
use_frameworks!

target 'YourProject' do

#Swift Pods
pod 'Alamofire'
pod 'ActiveLabel'

#ObjC Pods
pod 'IDMPhotoBrowser'
pod 'Firebase'

#This stuff is to set the SWIFT_VERSION
post_install do |installer|
installer.pods_project.targets.each do |target|
target.build_configurations.each do |config|
config.build_settings['SWIFT_VERSION'] = '2.3'
end
end
end
end

Run pod install. Run pod update (should not be necessary, but for some reason I'm getting updates almost every time, even after clean install). Close Xcode and reopen using the white xcworkspace file.

Sample Image

import Alamofire
import ActiveLabel
import IDMPhotoBrowser
import Firebase

Done.

Getting file not found in Bridging Header when importing Objective-C frameworks into Swift project

Found a solution:

  • The "Objective-C Bridging Header" setting (aka SWIFT_OBJC_BRIDGING_HEADER) must be set at the Target level, and NOT the Project level. Be sure to delete the setting value at the Project level.

(to me, it seems like an Xcode bug, since I don't know why it fixes it).

Swift Bridging Header File Not Found

I suspect the spaces are causing problems.

And the import line in the bridging header should be something like this:

#import <MZFormSheetPresentationController/MZFormSheetPresentationController.h>

Update:

I assume you are trying to run the Example from here: https://github.com/m1entus/MZFormSheetPresentationController

It seems like that bridging header file was accidentally removed (or was never there).

You can create your bridging header by following the instructions here: https://developer.apple.com/library/ios/documentation/Swift/Conceptual/BuildingCocoaApps/MixandMatch.html

with the following contents:

#import <MZFormSheetPresentationViewController/MZFormSheetPresentationController.h>

Update 2:

Can you change this line: #import <MZFormSheetPresentationController/MZFormSheetPresentationController Swift Example-Bridging-Header.h>

to

<MZFormSheetPresentationViewController/MZFormSheetPresentationController.h>

Bridging Header File can't find an imported Objective-C project

OK. I figured it out. I just didn't use the *.xcworkspace project after installing pods... After opening my project with this file, everything works well, as expected.

Thanks for your help, especially @kaizoku for suggesting me to use this file.



Related Topics



Leave a reply



Submit