Xcode 无法将领域框架导入swift项目

Xcode 无法将领域框架导入swift项目,xcode,swift,realm,Xcode,Swift,Realm,我已将Realm.framework和RealmSwift.framework文件添加到我的项目嵌入式二进制文件中。当我在swift文件中写入“导入域”时,它会显示“没有这样的模块域” 我使用的是Xcode 7和realm-swift-0.93.2。你能帮我解决这个问题吗?我不知道你的项目出了什么问题,但你可以试试 遵循最新的说明 创建桥接标头 在桥接标头中添加以下内容: #导入“Realm/Realm.h” 从代码中删除任何import Realm语句,包括从RLMSupport.swift

我已将Realm.framework和RealmSwift.framework文件添加到我的项目嵌入式二进制文件中。当我在swift文件中写入“导入域”时,它会显示“没有这样的模块域”


我使用的是Xcode 7和realm-swift-0.93.2。你能帮我解决这个问题吗?

我不知道你的项目出了什么问题,但你可以试试

  • 遵循最新的说明
  • 创建桥接标头

  • 在桥接标头中添加以下内容:

    #导入“Realm/Realm.h”

  • 从代码中删除任何
    import Realm
    语句,包括从
    RLMSupport.swift

  • import UIKit
    
    class Person: RLMObject {
        dynamic var name = ""
        dynamic var birthdate = NSDate(timeIntervalSince1970: 1)
    }
    
    class ViewController: UIViewController {
        override func viewDidLoad() {
            super.viewDidLoad()
    
            let author = Person()
            author.name = "David Foster Wallace"
    
            // Get the default Realm
            let realm = RLMRealm.defaultRealm()
    
            // Add to the Realm inside a transaction
            realm.beginWriteTransaction()
            realm.addObject(author)
            realm.commitWriteTransaction()
    
            // Print all Persons
            println(Person.allObjects())
        }
    }
    
  • 现在应该可以了。例如,我将其放入我的
    ViewController.swift

    import UIKit
    
    class Person: RLMObject {
        dynamic var name = ""
        dynamic var birthdate = NSDate(timeIntervalSince1970: 1)
    }
    
    class ViewController: UIViewController {
        override func viewDidLoad() {
            super.viewDidLoad()
    
            let author = Person()
            author.name = "David Foster Wallace"
    
            // Get the default Realm
            let realm = RLMRealm.defaultRealm()
    
            // Add to the Realm inside a transaction
            realm.beginWriteTransaction()
            realm.addObject(author)
            realm.commitWriteTransaction()
    
            // Print all Persons
            println(Person.allObjects())
        }
    }
    
  • 其中打印:

        RLMResults <0x7fa1c3f44760> (
        [0] Person {
            name = David Foster Wallace;
            birthdate = 1970-01-01 00:00:01 +0000;
            }
        )
    
    RLMResults(
    [0]人{
    姓名=大卫·福斯特·华莱士;
    出生日期=1970-01-01 00:00:01+0000;
    }
    )
    
    引用自


    并且正在运行项目。

    确保不仅在您的测试目标中(正如当前文档所指出的),而且在应用程序目标的构建设置中,
    RealmSwift.framework
    的父路径列在“框架搜索路径”中生成设置。

    请检查应用程序目标的
    框架搜索路径
    生成设置中是否列出了RealmSwift.framework的父路径。与Xcode 6不同,该值不再在Xcode 7 beta1-3中自动设置(可能是一个bug,在beta4中修复)。通常该值为
    $(PROJECT\u DIR)

    但是,
    realm-swift-0.93.2
    与Xcode 7和swift 2不兼容。即使解决了上述问题,也会出现另一个错误。(可能
    模块文件是由较旧版本的编译器创建的


    要将RealmSwift与Xcode 7和Swift 2一起使用,您应该自己从源代码构建框架,或者使用CocoaPods之类的包管理器来构建并集成到您的项目中。我强烈推荐使用椰子荚。此处是安装与Swift 2兼容的领域的说明。

    对于Swift,您需要导入RealmSwift而不是Realm。

    要通过Swift软件包管理器包含领域,方法如下:

    //swift工具版本:5.0
    导入包说明
    让包=包(
    名称:“SomeExampleApp”,
    产品:[
    // ...
    ],
    依赖项:[
    //...
    .包裹(
    url:“https://github.com/realm/realm-cocoa.git", 
    从:“3.18.0”
    ),
    ],
    目标:[
    .目标(
    名称:“SomeExampleApp”,
    依赖项:[“Realm”、“RealmSwift”、/*…*/],
    // ...
    )
    ],
    快捷语言版本:[.v5]
    )
    
    //
    //SomeExampleAppFile.swift
    //
    进口基金会
    进口领域
    导入RealmSwift
    //代码,代码,代码。。。