Swift中的CocoaPods和Realm

iKK*_*iKK 3 realm ios cocoapods swift

使用Xcode-6.3.1,iOS-8.3和MacOS-10.10.3,我试图使用RealmSwift(0.92.3)和CocoaPods 0.37.1

我使用以下过程:

  1. 安装cocoapods(在终端):

     $ sudo gem install cocoapods
    
    Run Code Online (Sandbox Code Playgroud)
  2. 创建新的Xcode项目(名为MyApp)

  3. 创建Podfile

    platform :ios, '8.3'
    use_frameworks!
    
    target 'MyApp' do
      pod 'RealmSwift', '>= 0.92.3'
    end
    
    target 'MyAppTests' do
      pod 'RealmSwift', '>= 0.92.3'
    end
    
    Run Code Online (Sandbox Code Playgroud)
  4. 将Podfile放在MyApp文件夹中(MyApp.xcodeproj旁边)

  5. 下载最新的Realm(从这里 0.92.3 )(即Swift版本)

    • 解压缩它
    • 转到/ ios文件夹
    • 将RealmSwift.framework也复制到MyApp-project文件夹

(在第4点和第5点之后,你最终会像这里的图片一样)

在此输入图像描述

  1. 在终端内,转到MyApp文件夹并键入

        pod install
    
    Run Code Online (Sandbox Code Playgroud)
  2. 在pod安装之后,我最终在终端内输入以下文本:

在此输入图像描述

  1. 之后,我只需打开新的MyApp.xcworkspace

它基本上看起来没问题 - 除了:没有框架看到发现!(见下面的截图)......

我还缺什么?

任何帮助非常感谢!

在此输入图像描述

iKK*_*iKK 6

我终于发现"红色"缺失的框架是没有害处的.使用CocoaPods这些框架实际上并不存在 - 因此Xcode无法改变颜色.当然,这并不表示这里的错误......

以上工作流程(第1-8页)是正确的!

但是,如果要使用"MyApp WatchKit Extension",则上面的Podfile不是正确的.正确的是:

xcodeproj 'MyApp.xcodeproj'
workspace 'MyApp.xcworkspace'
platform :ios, '8.3'

source 'https://github.com/artsy/Specs.git'
source 'https://github.com/CocoaPods/Specs.git'

use_frameworks!
link_with 'MyApp', 'MyApp WatchKit Extension'

def shared_pods
      pod 'RealmSwift', '>= 0.92.3'
end

target 'MyApp' do
    shared_pods
end

target 'MyAppTests' do
    shared_pods
end

target 'MyApp WatchKit Extension' do
    shared_pods
end
Run Code Online (Sandbox Code Playgroud)

此外,您仍然可以在Realm-Object定义中"导入RealmSwift",这在下面的示例中可以看到:

在此输入图像描述

此外,如果您打算在两个目标中使用Realm-Object(即"MyApp"和"MyApp WatchKit Extension"),请确保在RealmObject.swift文件的目标选择窗格中选择相应的目标(请参见下图) ):

在此输入图像描述