przelewy24 / p24-mobile-lib-ios

iOS library for Przelewy24 payments
2 stars 0 forks source link

Bridging headers problem #3

Closed bgord closed 4 years ago

bgord commented 4 years ago

Hello. I'm experiencing an issue building a Flutter plugin using Xcode 11.2.1, Swift 5.1.2, and Flutter 1.12.13. Our plugin comunicates with the iOS platform with Swift link. I tried to install the p24 iOS library, and followed the instructions from README, but defining the *-Bridging-Header.h and building the app leads to the following error:

<unknown>:0: error: using bridging headers with framework targets is unsupported
Command CompileSwiftSources failed with a nonzero exit code

Any thoughts what may be a cause of this behavior?

przelewy24mobile commented 4 years ago

Hi @bgord. Could you show a sample code snippet or project?

bgord commented 4 years ago

Sure, I've created an example Flutter plugin here - https://github.com/bgord/p24_ios_plugin.

The goal is to be able to use the p24-mobile-lib-ios library in this Swift file: https://github.com/bgord/p24_ios_plugin/blob/master/ios/Classes/SwiftP24IosPlugin.swift. I've followed the README instructions but I can't get the project to build because of the Bridging-Header error described above.

przelewy24mobile commented 4 years ago

I don't see in the example above where you define your BridgingHeader. However, if you want make your project to work, you must import "P24.h" in Runner-Bridging-Header.h (https://github.com/bgord/p24_ios_plugin/blob/master/example/ios/Runner/Runner-Bridging-Header.h)

By the way, our company is currently working on the release of the official p24 sdk plugin and will soon be public.

bgord commented 4 years ago

Yeah, importing "P24.h" in the file you mentioned causes the aforementioned error. It seems like an issue with the Flutter plugin's build system if given plugin communicates with iOS via Swift. I've converted the plugin to the ObjectiveC version, and the P24 library can be imported correctly.