Глядя на файл Crashlytics.h, я вижу, что он определен с использованием флагов компилятора:
#ifdef DEBUG
#define CLS_LOG(__FORMAT__, ...) CLSNSLog((@"%s line %d $ " __FORMAT__), __PRETTY_FUNCTION__, __LINE__, ##__VA_ARGS__)
#else
#define CLS_LOG(__FORMAT__, ...) CLSLog((@"%s line %d $ " __FORMAT__), __PRETTY_FUNCTION__, __LINE__, ##__VA_ARGS__)
#endif
Этот блок только что обертывает функции CLSNLog и CLSLog в зависимости от флага компилятора.
Итак, думая, что я просто пойду прямо к источнику, я попытался ссылаться на CLSLog напрямую из быстрого файла. Еще не повезло:
My-Bridging-header.h:
#import <Crashlytics/Crashlytics.h>
Log.swift:
import Foundation
import Fabric
import Crashlytics
func Log(message: String) {
NSLog("%@", message)
CLS_LOG("%@", message)
CLSLog("%@", message)
}
Последние две строки в функции Log вызывают ошибку, Use of unresolved identifier. Отчеты Crashlytics crash работают очень хорошо, за исключением функции ведения журнала. Согласно этой, была реализована поддержка ведения журнала для Swift.
Что касается версий, я использую последнюю версию Fabric/Crashlytics (декабрьская версия на момент публикации).
(Интересно отметить, что я вижу/использую CLSLogv()...)
Кто-нибудь знает правильный способ включить CLS_LOG для использования в проекте Swift?
