在 flutter 插件中添加对 xcframework 的依赖

Add a dependency on xcframework inside a flutter plugin

我正在开发一个内部依赖于 IOS xcframework 的 flutter 插件。

我的 flutter 插件的 podspec 文件(ios/flutter_plugin.podspec)看起来像这样:

Pod::Spec.new do |s|
  s.name             = 'flutter_plugin'
  s.version          = '0.0.1'
  s.summary          = 'example plugin'
  s.description      = <<-DESC
A new flutter plugin project.
                       DESC
  s.homepage         = 'https://example.com'
  s.license          = { :file => '../LICENSE' }
  s.author           = { 'a' => 'abc@example.com' }
  s.source           = { :path => '.' }
  s.source_files = 'Classes/**/*'
  s.dependency 'Flutter'
  s.platform = :ios, '11.0'
  # Flutter.framework does not contain a i386 slice.
  s.pod_target_xcconfig = { 'DEFINES_MODULE' => 'YES', 'EXCLUDED_ARCHS[sdk=iphonesimulator*]' => 'i386' }
  s.swift_version = '5.0'
  s.preserve_paths = 'MyFramework.xcframework'
  s.xcconfig = { 'OTHER_LDFLAGS' => '-framework MyFramework' }
  s.vendored_frameworks = 'MyFramework.xcframework'
end

当我在 Xcode 中导入示例项目 (example/Runner.xcworkspace) 时,我能够正确构建和 运行 应用程序。 但是,当我尝试使用 flutter 运行 从命令行 运行 应用程序时,出现以下错误: 错误:模块 'MyFramework' 没有名为 'someName'

的成员

我找到了解决方案,我不得不在我的 podspec 文件中添加这一行:

s.dependency 'MyFramework'