Как интегрировать Chartboost IOS SDK со Swift
Я пытаюсь интегрировать Chartboost IOS SDK со Swift. Я следовал всем инструкциям на странице интеграции Chartboost с IOS https://answers.chartboost.com/hc/en-us/articles/201220095-iOS-Integration и создал соединительный заголовок для использования инфраструктуры в моем быстром проекте.
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 ошибки, например -> http://i.imgur.com/WCvyooz.png. Почему я получаю эти ошибки и как от них избавиться?
4 ответа
Похоже, что заголовки требуют UIKit и Foundation. Добавьте эту строку вверху заголовка моста.
#import <UIKit/UIKit.h>
Кроме того, вы убедились, что заголовок моста находится в корне проекта в файловой системе? Иерархия Project Navigator Xcode не обязательно совпадает с файловой системой.
Он ищет заголовок в /Users/andrew/Documents/dev/ios/Protect Paigridge/
Откройте искатель и убедитесь, что заголовок находится в этом каталоге. XCode, возможно, создал его на более глубоком уровне, чем остальные ваши файлы кода. Если это так, вы можете отредактировать запись в настройках сборки или переместить файл.
Добавляя к верхнему ответу, указанному выше, попробуйте добавить оба
#import <Foundation/Foundation.h>
#import <UIKit/UIKit.h>
#import <Chartboost/Chartboost.h>
в ваш файл BridgingHeader.h
и убедитесь, что они оба выше
#import <Chartboost/Chartboost.h>
как показано выше
Быстрый код 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()
Этот вопрос, как импортировать.
Вы можете сделать код objC и bridge.h, чтобы показать в вашем коде
[Chartboost showInterstitial:CBLocationHomeScreen];
Для быстрой
Chartboost.showInterstitial(CBLocationHomeScreen)
я хочу, чтобы это помогло тебе