Pod::Spec.new do |s| s.name = 'device_jieli' s.version = '0.0.1' s.summary = 'JieLi Home SDK Flutter plugin (iOS).' s.description = <<-DESC JieLi (杰理) device plugin — iOS counterpart of the Android implementation under android/src/main/kotlin/com/jielihome/jielihome. DESC s.homepage = 'https://example.com' s.license = { :type => 'MIT', :file => '../LICENSE' } s.author = { 'AI Agent' => 'liwei1dao@gmail.com' } s.source = { :path => '.' } s.source_files = 'Classes/**/*.{h,m,swift}' s.dependency 'Flutter' s.dependency 'device_plugin_interface' s.platform = :ios, '12.0' s.swift_version = '5.0' # 只 vendor 本插件独家依赖。其他 framework 由 sibling 插件已经引入: # - JL_OTALib / JL_AdvParse / JL_HashPair / JLLogHelper —— `ota` 插件 # 的 vendored_frameworks 已提供(local_plugins/ota/ios/Frameworks/) # - JLAudioUnitKit —— `ble_service` 的 SPM binary target 已提供 # 重复 vendor 同名 framework 会触发 Xcode "Multiple commands produce ..." # 报错(两个 build phase 各拷一份到 Runner.app/Frameworks/)。 s.vendored_frameworks = [ 'Frameworks/JL_BLEKit.xcframework', 'Frameworks/JLAV2Lib.framework' ] s.frameworks = 'CoreBluetooth', 'AVFoundation', 'UIKit', 'Foundation' s.pod_target_xcconfig = { 'DEFINES_MODULE' => 'YES', 'EXCLUDED_ARCHS[sdk=iphonesimulator*]' => 'arm64', # JieLi's xcframeworks ship Obj-C headers; expose them to Swift via the # generated module map. 'CLANG_ENABLE_MODULES' => 'YES' } end