У меня есть проект XCFramework Xcode, который включает -
[*]Некоторые коды, предоставляющие некоторые API, реализуют SDK («SuperSDK»), [*]Внутренний XCFramework (с закрытым исходным кодом). [*]XCFramework стороннего (A) SDK и [*]Другой сторонний (B) SDK добавил зависимость Cocoapod.
Подфайл определяет зависимость стороннего (B) SDK Cocoapod. Я использую XCWorkspace, созданный с помощью pod install, для создания XCFramework. Подфайл для SuperSDK.xcodeproj настроен как -
нацельтесь на «SuperSDK» используйте_frameworks! модуль «ThirdPartyBSDK» конец

SuperSDK.xcframework распространяется как Cocoapod. Подспек выглядит так -
Pod::Spec.new do |s| s.name = 'СуперSDK' с.версия = '0.1.0' s.summary = 'Супер SDK' s.description = 'SuperSDK Cocoapod' s.homepage = 'https://supersdk.com' s.license = { :type => 'MIT', :file => 'LICENSE' } s.author = { 'SuperSDK' => '[email protected]' } s.source = { :http => 'file://' + __dir__ + '/SuperSDK.zip', :type => 'zip' } s.xcconfig = { 'FRAMEWORK_SEARCH_PATHS' => '"$(PODS_ROOT)/SuperSDK/**"' } s.module_name = 'СуперSDK' s.ios.deployment_target = '14.0' s.dependent 'ThirdPartyBSDK' s.vendored_frameworks = 'SuperSDKPod/Frameworks/SuperSDK.xcframework', 'SuperSDKPod/Frameworks/Internal.xcframework', 'SuperSDKPod/Frameworks/ThirdPartyA.xcframework' конец Cocoapod «SuperSDK» добавляется в простой проект приложения iOS с использованием Cocoapods с подфайлом —
# Раскомментируйте следующую строку, чтобы определить глобальную платформу для вашего проекта. # платформа: iOS, '9.0' цель «ios» сделать используйте_frameworks! pod 'SuperSDK', :path => '../pod/SuperSDK.podspec' # Поды для iOS цель «iosTests» сделать наследовать! :search_paths # Подов для тестирования конец цель «iosUITests» сделать # Подов для тестирования конец конец Приложение iOS компилируется и загружается в симулятор, где происходит сбой с ошибкой dyld -
dyld[29662]: Символ не найден: _$s12ThirdPartyBSDK0A0C09setTelemetryA6Server3urlySS_tKFTj Ссылка: /Users/alpha/Library/Developer/CoreSimulator/Devices/0451AD73-E1EC-4568-8BD5-227DFA87FB90/data/Containers/Bundle/Application/331216E1-417E- 4790 -B037-B037B9B27D35/Demo Prod Debug.app/Frameworks/SuperSDK.framework/SuperSDK Ожидается в: /Users/alpha/Library/Developer/CoreSimulator/Devices/0451AD73-E1EC-4568-8BD5-227DFA87FB90/data/Containers/Bundle/Application/331216E1-417E -4790 -B037-B037B9B27D35/Demo Prod Debug.app/Frameworks/ThirdPartyBSDK.framework/ThirdPartyBSDK Сообщение от отладчика: убит Нужно ли мне в текущей настройке собрать исходные файлы ThirdPartyBSDK.xcframework и включить их как vendored_frameworks, указанный через Podspec SuperSDK?
>