我正在尝试将Chartboost IOS SDK与Swift集成。我已经按照Chartboost IOS集成页面https://answers.chartboost.com/hc/en-us/articles/201220095-iOS-Integration上的所有说明进行操作,并创建了一个桥接标题,以便在我的swift项目中使用该框架。
BridgingHeader.h
#import <Chartboost/Chartboost.h>
#import <Chartboost/CBNewsfeed.h>
#import <CommonCrypto/CommonDigest.h>
#import <AdSupport/AdSupport.h>
我的BridgingHeader.h文件在我的项目根目录http://i.imgur.com/DcTcixo.png中被放置了,我已经按照必要的步骤将BridgingHeader.h添加到我的构建设置http://i.imgur.com/jvtzs7a.png但是当我运行项目时,我得到了像52这样的错误 - &gt; http://i.imgur.com/WCvyooz.png。为什么我会收到这些错误?如何摆脱它们?
答案 0 :(得分:4)
看起来标题需要UIKit和Foundation。在桥接标题的顶部添加此行。
#import <UIKit/UIKit.h>
另外,您是否确定您的桥接标头位于文件系统中项目的根目录中? Xcode的Project Navigator的层次结构不一定与文件系统相同。
它在/Users/andrew/Documents/dev/ios/Protect Paigridge/
Open Finder中查找标题,并确保标题位于该目录中。 Xcode可能已经创建了一个比其他代码文件更深的层次。如果是这种情况,您可以在构建设置中编辑条目或移动文件。
答案 1 :(得分:0)
Swift Chartboost代码,在AppDelegate类中添加它:
func applicationDidBecomeActive(application: UIApplication)
{
let kChartboostAppID = "5472ef8f04b01601a1a5814c";
let kChartboostAppSignature = "5b6222426e68cda48669a1d4d8246d4c3d20db9c";
Chartboost.startWithAppId(kChartboostAppID, appSignature: kChartboostAppSignature, delegate: self);
Chartboost.cacheMoreApps(CBLocationHomeScreen)
}
class func showChartboostAds()
{
Chartboost.showInterstitial(CBLocationHomeScreen);
}
func didFailToLoadInterstitial(location :String!, withError error: CBLoadError)
{
}
func didDismissInterstitial(location :String! )
{
if(location == CBLocationHomeScreen)
{
Chartboost.cacheInterstitial(CBLocationMainMenu)
}
else if(location == CBLocationMainMenu)
{
Chartboost.cacheInterstitial(CBLocationGameOver)
}
else if(location == CBLocationGameOver)
{
Chartboost.cacheInterstitial(CBLocationLevelComplete)
}
else if(location == CBLocationLevelComplete)
{
Chartboost.cacheInterstitial(CBLocationHomeScreen)
}
}
调用语法:
AppDelegate.showChartboostAds()
答案 2 :(得分:0)
此问题是如何导入。
您可以在代码中显示objC代码和bridge.h
[Chartboost showInterstitial:CBLocationHomeScreen];
快速
Chartboost.showInterstitial(CBLocationHomeScreen)
我希望能帮到你
答案 3 :(得分:0)
添加到上面的答案说上面尝试添加
#import <Foundation/Foundation.h>
#import <UIKit/UIKit.h>
#import <Chartboost/Chartboost.h>
到您的BridgingHeader.h文件
并确保它们都在
之上#import <Chartboost/Chartboost.h>
如上所示