2015-07-23 2 views
2

Это мой PodfileКак использовать Chartboost с Cocoapods в Swift?

platform :ios, 8.0 
use_frameworks! 

pod "ChartboostSDK" 
pod "SVProgressHUD" 

SVProgressHUD в настоящее время превращается в рамки, но по какой-то причине Chartboost не является.

enter image description here

Это, конечно, делает импорт для Chartboost не работает в моем коде.

ответ

1

Библиотека ChartboostSDK не поддерживается Swift непосредственно с помощью CocoaPods, вам необходимо включить его вручную следующим образом:

1.First, распаковать пакет SDK и падение Chartboost Framework в ваш Проект Xcode. Убедитесь, что вы также связаны эти рамки:

  • StoreKit
  • Foundation
  • CoreGraphics
  • UIKit

2.Then нужно добавить мостовую заголовок Swift позволяет общаться с вашими старыми классами Objective-C из ваших классов Swift. Вам понадобится один, если вы планируете хранить части своей кодовой базы в Objective-C. Вы можете создать его вручную, как следующим образом:

  1. Добавить новый файл в Xcode (File> New> File), затем выберите “Source” и нажмите “Header File“.

  2. Назовите ваш файл "YourProjectName-Bridging-Header.h".

  3. Перейдите к настройкам сборки проекта и найдите раздел “Swift Compiler – Code Generation”. Скорее вы можете ввести “Swift Compiler” в поле поиска, чтобы сузить результаты. Примечание. Если у вас нет раздела «Swift Compiler - Code Generation», это означает, что у вас, вероятно, еще нет классов Swift, добавленных в ваш проект. Добавьте файл Swift, затем повторите попытку.

  4. Рядом с "Objective-C Bridging Header" вам нужно будет добавить имя/путь вашего файла заголовка. Если ваш файл находится в корневой папке вашего проекта, просто укажите имя файла заголовка. Примеры: «ProjectName/ProjectName-Bridging-Header.h» или просто «ProjectName-Bridging-Header.h».

  5. Откройте свой вновь созданный мост и импортируйте свои классы Objective-C с помощью #import statements. Любой класс, указанный в этом файле, будет доступен из ваших быстрых классов.

Вы мост заголовок должен быть иметь в следующих строках:

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

Вы можете прочитать больше о следующих шагах, используя Charboost в его iOS Integration справочного руководства.

Я надеюсь, что это поможет вам.

+0

Вы говорите мне, что все другие библиотеки, с которыми у меня не было проблем (например, SVProgressHUD, AFNetworking, SDWebImage), поддерживаются для быстрого? Даже JBKenBurnsView, который был обновлен 6 месяцев назад, до того, как быстрое использование было возможно даже с использованием cocoapods, работает отлично. Так странно ... – Jan

+0

Да, например, AFNetworking - это библиотека Objective-C, ее преемником является Alamofire в Swift. Если вы хотите использовать Objective-C Code в Swift, вам нужно делать то, что я вам рассказываю раньше. –

+0

Ммм, нет, это не относится ко всем другим библиотекам Objective-C, о которых я упомянул в своем предыдущем комментарии. У меня есть все те другие библиотеки, которые работают без соединительного заголовка с помощью 'use_frameworks!' В подфайле благодаря поддержке Cocoapods Framework и Swift, которые они реализовали с версии 0.36. – Jan

 Смежные вопросы

  • Нет связанных вопросов^_^