Swift MessageKit 问题

Swift MessageKit issues

此处展示安装 MessageKit 后的图像以及我目前遇到的问题。也许是我的 pod 文件有问题,但 MessageKit 中有问题。看起来在 MessageKit pod 文件中,一些代码需要根据它在尝试构建它后在 Xcode 中向我显示的内容进行更新。我一直在清理和构建我的项目。在安装 MessageKit 之前,我的项目正在运行。

 pod 'Firebase'
 pod 'Firebase/Core'
 pod 'Firebase/Auth'
 pod 'Firebase/Storage'
 pod 'Firebase/Database'
 pod 'Firebase/Messaging'
 pod 'Firebase/Crash'
 pod 'GoogleSignIn'
 pod 'Bolts'
 pod 'FBSDKCoreKit'
 pod 'FBSDKLoginKit'
 pod 'FBSDKShareKit'
 pod 'TwitterKit'
 pod 'TwitterCore'
 pod 'SnapKit'
 pod 'Alamofire'
 pod 'SwiftyJSON'
 pod 'SDWebImage'
 pod 'UIActivityIndicator-for-SDWebImage'
 pod 'SVProgressHUD'
 pod 'SWRevealViewController'
 pod 'IQKeyboardManagerSwift'
 pod 'IGListKit'
 pod 'InstagramKit/UICKeyChainStore'
 pod 'InstagramKit'
 pod 'Reusable'
 pod 'OAuthSwift'
 pod 'AFNetworking'
 pod 'MBProgressHUD'
 pod 'Fabric'
 pod 'Crashlytics'
 pod 'OneSignal'
 pod 'BottomPopup'
 pod 'Kingfisher'
 pod 'MessageKit'
pod 'Firebase/Firestore'
post_install do |installer|
  installer.pods_project.targets.each do |target|
      if target.name == 'MessageKit'
          target.build_configurations.each do |config|
              config.build_settings['SWIFT_VERSION'] = '4.0'
          end
      end
   end
   end

end

target 'OneSignalNotificationServiceExtension' do
use_frameworks!
pod 'OneSignal'
end

您使用的是最新版本的 MessageKit 2.0。此版本仅兼容 Swift 4.2

所以如果你使用 Swift 4.2 删除这个

post_install do |installer|
  installer.pods_project.targets.each do |target|
      if target.name == 'MessageKit'
          target.build_configurations.each do |config|
              config.build_settings['SWIFT_VERSION'] = '4.0'
          end
      end
   end
end

如果将 MessageKit 与 Swift 4.03.0 一起使用,您需要使用 1.0 版的 MessageKit。所以你的 pod 文件应该是这样

pod 'MessageKit', '~> 1.0.0'

希望能解决你的问题