Pod更新已经严重改变了应用

时间:2016-11-10 06:59:47

标签: ios cocoapods pubnub xcode8.1 project-navigator

我完美的应用程序曾经有一个Xcode Project Navigator,如下所示。

Project Navigator Old

iOS 10要求意味着我必须将Xcode升级到8.1,这意味着将整个Mac OS升级到Sierra,并将整个应用程序翻译成Swift 2.3。

毋庸置疑,这会导致错误,其中一个是PubNub的问题。但是,除了这个新的构建错误之外,应用程序结构是相同的,在处理完所有布局问题后,一切似乎都没问题。

我被要求运行以下步骤尝试解决PubNub pod错误,尽管我警告说先前尝试处理pod文件会导致最终无法恢复的致命错误。

  1. 在Xcode更新后安装所有iOS模拟器
  2. 打开Xcode首选项(Cmd +,)并导航到“位置”选项卡,其中将显示“DerivedData”文件夹的路径
  3. 点击显示“DerivedData”路径右侧带箭头的小圆圈,在Finder中打开它
  4. 退出Xcode
  5. 删除“DerivedData”文件夹
  6. 通过在终端中输入CocoaPods(如果与之集成)缓存: rm -rf~ / Library / Caches / CocoaPods
  7. 从项目根目录(Podfile所在的位置)在终端中运行: pod deintegrate MyApp.xcodeproj
  8. 从项目根目录(Podfile所在的位置)删除Podfile.lock文件
  9. 从项目根目录(Podfile所在的位置)在终端:pod update
  10. 中运行它
  11. 启动Xcode(点击Shift + Cmd + K以防万一)
  12. 尝试构建项目
  13. 完成所有这些后,我的Project Navigator现在看起来像这样。

    Project Navigator New

    正如你所看到的,我已经丢失了很多东西,包括pod文件等。据我所知,我的应用程序现在受了致命伤。

    我的桥接标题为红色,Restkit.h为红色,所有pod引用都已消失。

    我在Finder中的项目根目录有Pods文件夹和pod文件等,但是如果我尝试将文件夹从Finder拖到项目中,它们就不会像以前那样显示 - 例如,文件夹是蓝色而不是黄色。

    我正在使用Xcode 8.1和Cocoapods 1.1.1。

    如何恢复我的应用?

    编辑:如果它有帮助,这里是我在1月份未解决的问题的链接,这是我最后一次触摸pod文件到目前为止。这种情况的后果与以前一样 - 不同之处在于1月份我放弃了2周的工作,现在我正在考虑放弃10个月的工作。

    RestKit.h never found in Xcode project

    Podfile:

    pod 'RestKit', '~> 0.24.0'
    pod 'SimpleKeychain'
    pod 'AWSS3'
    pod 'VideoCore'
    pod 'SDWebImage', '~>3.7'
    pod 'SVPullToRefresh'
    pod 'PubNub', '~> 3.7.11'
    pod 'MZFormSheetController'
    

    终端中pod更新的结果:

    更新所有广告连播 更新本地规范存储库 执行master规范仓库的深度提取以提高未来的性能 警告:由于文件太多,跳过了不精确的重命名检测。 CocoaPods 1.2.0.beta.1可用。 要更新使用:sudo gem install cocoapods --pre [!]这是我们很乐意尝试的测试版本。 有关详情,请参阅https://blog.cocoapods.org

    上的https://github.com/CocoaPods/CocoaPods/releases/tag/1.2.0.beta.1和此版本的CHANGELOG

    分析依赖关系 [!]依赖项RestKit (~> 0.24.0)未在任何具体目标中使用。 依赖项SimpleKeychain未在任何具体目标中使用。 依赖项AWSS3未在任何具体目标中使用。 依赖项VideoCore未在任何具体目标中使用。 依赖项SDWebImage (~> 3.7)未在任何具体目标中使用。 依赖项SVPullToRefresh未在任何具体目标中使用。 依赖项PubNub (~> 3.7.11)未在任何具体目标中使用。 依赖项MZFormSheetController未在任何具体目标中使用。

1 个答案:

答案 0 :(得分:1)

pod update日志开始,CocoaPods似乎无法找到必须应用库的任何目标。

您可以在Podfile中尝试这样的事情吗?

target 'YOUR_TARGET_NAME' do
    pod 'RestKit', '~> 0.24.0'
    pod 'SimpleKeychain'
    pod 'AWSS3'
    pod 'VideoCore'
    pod 'SDWebImage', '~>3.7'
    pod 'SVPullToRefresh'
    pod 'PubNub', '~> 3.7.11'
    pod 'MZFormSheetController'
end

不确定它是否能解决您的错误。