Xcode/Swift: нет такого модуля «GeoFire»

Я загрузил последнюю версию фреймворка GeoFire v1.1.3 из здесь и поместил его в свой проект Swift Xcode. но мой оператор import GeoFire выбрасывает

Нет такого модуля "GeoFire"

Это очень странно, потому что несколько минут назад я сделал то же самое для платформы Firebase, и она работает нормально. Моя цель - iOS 8.0, и я считаю, что мне не нужен заголовок Bridging.

Framework присутствует в связанных платформах и библиотеках , встроенных двоичных файлах и связывает двоичные файлы с библиотеками.


person Kashif    schedule 23.03.2016    source источник
comment
Я настоятельно рекомендую вам использовать какаоподы. Больше никакой головной боли, просто добавьте pod 'GeoFire' в подфайл, напечатайте pod install в терминале и используйте его в коде.   -  person Leo    schedule 24.03.2016
comment
Да, я знаю, я просто не люблю использовать стручки какао и усложнять рабочее пространство и т. д. Я предпочитаю добавлять фреймворки вручную и чувствую, что таким образом у меня больше контроля над вещами.   -  person Kashif    schedule 24.03.2016


Ответы (3)


Если вы пишете это в быстром (это в ваших тегах), вам нужно создать файл заголовка моста, чтобы иметь возможность выставить библиотеку Objective C для вашего быстрого кода, импортируя библиотеку объектива c в файл заголовка моста. Вот руководство, как это сделать

Надеюсь, это решит вашу проблему.

person Daniel Ormeño    schedule 23.03.2016
comment
Но как получается, что библиотека Firebase работает без моста? Он также написан в ObjC - person Kashif; 24.03.2016
comment
Я могу только предположить, что вы не ссылаетесь на него из своего быстрого кода, поэтому в нем нет необходимости =) - person Daniel Ormeño; 24.03.2016
comment
В конце концов мне пришлось сделать соединительный заголовок, как вы говорите, и, конечно, тогда это работает. Я предполагаю, что между фреймворками Firebase и GeoFire есть некоторая разница. - person Kashif; 24.03.2016
comment
@Kashif Не могли бы вы предоставить код своего моста, пожалуйста? У меня та же проблема, но когда я импортирую GeoFire Framework, я не получаю приглашение создать файл моста. Спасибо - person Septronic; 30.12.2016
comment
@Септроник: #ifndef Bridge_h #define Bridge_h #import "GeoFire.h" #import "Firebase.h" #endif - person Kashif; 30.12.2016
comment
@Kashif Спасибо за код. Использовали ли вы структуру, которую строит проект GeoFire? Я клонировал гит GeoFire, а внутри есть проект xcode. Когда вы строите цель фреймворка, он создает фреймворк. Затем я импортировал фреймворк, но xcode его не распознает. Я пытался использовать ваш код, а также импортировать заголовки как #import ‹GeoFire/GeoFire.h›, но все равно получаю ту же ошибку. - person Septronic; 30.12.2016
comment
@Septronic: убедитесь, что ваш мост правильно настроен в настройках сборки и там присутствует флаг компоновщика -ObJC. В основном это происходит, когда мостовой путь не распознается. - person Kashif; 30.12.2016
comment
@Kashif Спасибо за помощь. Это тоже не сработало, но в итоге я импортировал всю папку GeoFire (без компиляции ее в фреймворк) и благодаря Xcode (импорт файлов по отдельности, наконец, побудил меня создать для них мост) и изменил #import ‹....› в импортированных файлах в #import... наконец-то все заработало. Я создам это как проблему в git в какой-то момент. Если вы считаете, что опубликовать мою находку в качестве ответа здесь — хорошая идея, дайте мне знать, и я сделаю это :) Еще раз спасибо. - person Septronic; 30.12.2016

Попробуйте сделать это: https://youtu.be/009UrLVlAbo?t=67, но просто измените импортировать заголовочный файл следующим образом:

#import <Firebase/Firebase.h>
#import <GeoFire/GeoFire.h>
person Pedro Trujillo    schedule 13.04.2016

В XCode 7.2 со Swift и столкнулся с той же проблемой при смешивании модулей Firebase и Google Analytics.

Только Firebase отлично работает с «use_frameworks!» в подфайле, но для установки модуля Google Analytics эта строка должна быть закомментирована. Поэтому необходим заголовочный файл моста.

person drakest1    schedule 05.05.2016