我是iOS编程的新手,现在我想为当前的应用程序构建多个环境。但是,当我安装Pod时,它成功了,但是我的Pod无法识别。它显示错误
“没有这样的模块”
在我安装的所有框架中。
这是我的Podfile:
# Uncomment the next line to define a global platform for your project
platform :ios, '9.0'
abstract_target 'InviseeCommon' do
target 'Invisee' do
# Comment the next line if you're not using Swift and don't want to use dynamic frameworks
use_frameworks!
# Pods for Invisee
pod 'Alamofire', '~> 4.7.3'
pod 'Gloss', '~> 2.0.1'
pod 'RxSwift', '~> 4.1.1'
pod 'RxCocoa', '~> 4.1.1'
pod 'SkyFloatingLabelTextField', '~> 3.0'
pod 'UICheckbox.Swift', '~> 1.0.0'
pod 'M13Checkbox', '~> 3.2.2'
pod 'ImageSlideshow', '~> 1.5'
pod 'ImageSlideshow/Alamofire', '~> 1.7.0'
pod 'SwiftyJSON', '~> 4.2.0'
pod 'EPSignature', '~> 1.0.6'
pod 'Firebase/Core'
pod 'Firebase/Messaging'
# pod 'netfox' # network debugging
# pod 'NTMonthYearPicker' # date picker mode (for only show month and year
pod 'SDWebImage', '~> 4.0'
pod 'Kanna', '~> 4.0.0'
pod 'IQKeyboardManagerSwift', '~> 6.1.1'
pod 'RealmSwift'
# UIs KIT
pod 'SVProgressHUD' , '~> 2.2.5'
# pod 'FlatUIKit' # flat ui kits
pod "FDStackView", "1.0" # stack view backports ( < ios 9.0 )
pod 'XLPagerTabStrip', '~> 8.0.1' # android-pager-strip like tab
pod "OALayoutAnchor", '~> 0.2.0' # layout anchor backport for ios <=8
pod 'ActionSheetPicker-3.0', '~> 2.3.0' # ui sheet for picker
pod 'Charts', '~> 3.2.0' # draw chart ability
pod "FlexibleSteppedProgressBar", '~> 0.5.0'
pod 'Pulley', '~> 2.6.0' # bottom sheet behavior like android
pod "SwiftChart", '~> 1.0.1'
pod 'LTHRadioButton', '~> 1.2.2'
pod 'DropDown', '~> 2.3.6'
pod 'QRCode', '~> 2.0'
pod 'NVActivityIndicatorView', '~> 4.4.0'
pod 'QRCodeReader.swift', '~> 8.2.0'
pod 'EPSignature', '~> 1.0.6'
end
target 'Development' do
pod 'InviseeDevelopment'
end
end
post_install do |installer|
installer.pods_project.build_configurations.each do |config|
config.build_settings.delete('CODE_SIGNING_ALLOWED')
config.build_settings.delete('CODE_SIGNING_REQUIRED')
config.build_settings['SWIFT_VERSION'] = '4.0'
end
installer.pods_project.targets.each do |target|
if ['Charts','DropDown', 'RealmSwift', 'Pulley', 'LTHRadioButton'].include? "#{target}"
print "Setting #{target}'s SWIFT_VERSION to 3.0\n"
target.build_configurations.each do |config|
config.build_settings['SWIFT_VERSION'] = '4.2'
end
else
print "Setting #{target}'s SWIFT_VERSION to Undefined (Xcode will automatically resolve)\n"
target.build_configurations.each do |config|
config.build_settings.delete('SWIFT_VERSION')
end
end
end
end
我该怎么办?谢谢。
答案 0 :(得分:1)
转到Pod文件并定义Pod,然后将其添加到特定目标中
def pods
pod 'Pod 1', '~> 1.0'
end
target 'Target 1' do
pods
end
target 'Target 2' do
pods
end
答案 1 :(得分:1)
@Lu's的答案不再有效,因为从最新版的可可足类中将link_with替换为abstract_target。
请参考以下配置文件结构,了解每个目标的共同框架和不同框架
# There are no targets called "InviseeCommon" in any Xcode projects
abstract_target 'InviseeCommon' do
pod 'Fabric'
target 'Invisee' do
pod 'Invisee'
end
target 'Development' do
pod 'InviseeDevelopment'
end
end
创建重复的目标,而不是新的方案。请参考下面的屏幕截图,了解如何创建重复目标。
我的演示项目的Podfile示例
abstract_target 'InviseeCommon' do
pod 'Fabric'
target '56128499' do
pod 'Alamofire', '~> 4.7.3'
end
target 'Development' do
pod 'Alamofire', '~> 4.7.1'
end
end
Fabric
在所有目标中都是通用的,Alamofire(4.7.1)
在开发中是通用的,而Alamofire(4.7.3)
在56128499中是通用的
reinstall
可可豆荚