我如何在 Swift 中将 Chartboost 与 Cocoapods 一起使用?

How can I use Chartboost with Cocoapods in Swift?

这是我的 Podfile

platform :ios, 8.0
use_frameworks!

pod "ChartboostSDK"
pod "SVProgressHUD"

SVProgressHUD 正在变成一个框架,但出于某种原因 Chartboost 不是。

这当然会使 Chartboost 的导入在我的代码中不起作用。

ChartboostSDK不支持Swift直接使用CocoaPods,需要通过以下方式手动集成:

1.First,解压 SDK 包并将 Chartboost Framework 放入您的 Xcode 项目中。确保您还链接了这些框架:

  • StoreKit
  • Foundation
  • CoreGraphics
  • UIKit

2.Then 您需要添加一个 Swift 桥接 header 允许您从 Swift 与旧的 Objective-C class 进行通信] classes.You 如果您打算在 Objective-C 中保留部分代码库,则需要一个。您可以通过以下方式手动创建它:

  1. 将新文件添加到 Xcode(文件 > 新建 > 文件),然后 select “Source” 并单击 “Header File“

  2. 将文件命名为“YourProjectName-Bridging-Header.h”。

  3. 导航到您的项目构建设置并找到 “Swift Compiler – Code Generation” 部分。您可能会发现在搜索框中输入 “Swift Compiler” 可以更快地缩小结果范围。注意:如果您没有“Swift Compiler – Code Generation”部分,这意味着您可能还没有将任何 Swift classes 添加到您的项目中。添加 Swift 文件,然后重试。

  4. 在“Objective-C Bridging Header”旁边,您需要添加 header 文件的 name/path。如果您的文件位于项目的根文件夹中,只需将 header 文件的名称放在那里。示例:“ProjectName/ProjectName-Bridging-Header.h”或简单的“ProjectName-Bridging-Header.h”.

  5. 打开您新创建的桥接 header 并使用 #import statements 导入您的 Objective-C classes。此文件中列出的任何 class 都可以从您的 swift classes.

  6. 访问

你桥接header里面必须有下面几行:

#import <UIKit/UIKit.h>
#import <Chartboost/Chartboost.h>
#import <Chartboost/CBNewsfeed.h>
#import <CommonCrypto/CommonDigest.h>
#import <AdSupport/AdSupport.h>

您可以在他的 iOS Integration 帮助手册中阅读有关使用 Charboost 的后续步骤的更多信息。

希望对你有所帮助。