繁体   English   中英

如何在SWIFT Xcode中导入Rollout.io

[英]How to Import Rollout.io in SWIFT Xcode

我正在尝试安装rollout.io,它只是说它把代码放在你的ApppDelegate中,问题是它在Objective-C中。 所以我使用转换器尝试将其更改为Swift,但是当我尝试将Objective-C导入头放入我的代码时它不起作用。 即使我尝试转换它,在线转换器甚至不会显示“导入”部分

我已经准备好了这些

码:

import  Rollout
import rollout
import UIRollout

所有这些都失败了。

我可以在快速弹出中获得底部但不是顶部的“import,Rollout / Rollout.h>”部分

在此输入图像描述

在此输入图像描述

注意:

以下将允许您设置Rollout SDK,以防您的AppDelegate在Swift中。

更新:

Rollout SDK 1.1.0具有用于调用设置的Swift接口,因此以下所有信息现在都不相关。

原答案:

1. Swift-ObjC桥接标题

要从Swift调用[Rollout setupWithDebug:] ,你应该设置Objective-C Bridging Header并从中导入<Rollout/Rollout.h>

  1. 在构建设置中,检查是否已设置SWIFT_OBJC_BRIDGING_HEADER。 如果是,请转到步骤4
  2. 创建一个C头( 文件 - >新建 - >文件... - > iOS - >源 - >头文件 )。 以某种方式调用它,例如ObjC-Bridging-Header
  3. 转到构建设置并将SWIFT_OBJC_BRIDGING_HEADER设置为指向您创建的文件( ObjC-Bridging-Header.h )。 如果文件不在项目的根目录,则设置中需要相对路径 - 此SO答案中的更多详细信息
  4. 转到标题并在那里添加导入行:

    #import <Rollout/Rollout.h>

2. #if debug

为了允许Rollout测试模式(为了便于热补丁测试),还需要从ObjC翻译#ifdef Debug 这可以通过在构建设置中设置OTHER_SWIFT_FLAGS来完成,如下所示:

在此输入图像描述

3.从AppDelegate.swift调用设置

现在您可以application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?)添加到application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?)

    #if DEBUG
        Rollout.setupWithKey("<rollout_key>", developmentDevice: true)
    #else
        Rollout.setupWithKey("<rollout_key>", developmentDevice: false)
    #endif

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM