Как добавить Firebase в сегодняшнее расширение iOS
Мне нужно иметь возможность использовать Firebase в моем расширении Today View, однако я не могу импортировать модуль Firebase. Я думаю, это потому, что мне нужна новая цель в моем файле cocoa pods, но я не уверен, как это сделать.
спасибо.
3 ответов
вы должны рассматривать расширение сегодня как свое собственное отдельное приложение (несколько)
на панели мониторинга проекта firebase вам нужно нажать кнопку" Добавить другое приложение".
выберите iOS и введите ИДЕНТИФИКАТОР ПАКЕТА вашего СЕГОДНЯ РАСШИРЕНИЕ
завершите работу мастера и загрузите сгенерированный GoogleService-Info.файл plist файл
добавьте файл plist в свой корневая папка сегодняшнего расширения
перейдите в свой проект xcode и вручную добавьте FirebaseCore.каркас и FirebaseDatabase.рамки к вашему сегодня расширение
наконец, внутри вашего сегодня Сегодня viewcontroller вызов FirebaseApp.configure ()
import FirebaseDatabase
import FirebaseCore
override func viewDidLoad() {
super.viewDidLoad()
FirebaseApp.configure()
}
насколько мне известно, виджеты не могут использовать определенные api, такие как firebase. Виджеты должны показывать данные, предоставленные основным приложением через UserDefaults например
TodayViewExtensions (или виджеты) может быть только очень легким codewise.
1) все еще не удается импортировать Firebase!
убедитесь, что модули установлены для всех целей в вашем проекте. Для достижения этого используйте inherit!
или abstract_target
в файл контейнера.
самый простой пример, используя abstract_target
С официальная документация:
abstract_target 'Networking' do
pod 'AlamoFire'
target 'Networking App 1'
target 'Networking App 2'
end
на inherit!
см. это так вопрос и ответ.
2) как я могу достичь этого на моем существующем приложении, не испортив вещи?
удалить
Podfile
,Podfile.lock
иYourProject.xcworkspace
вопрос
pod init
и он будет перечислять ваши существующие цели один за другим.редактировать
Podfile
любой группировкой подabstract_target
или черезinherit!
вопрос
pod install
новая YourProject.xcworkspace
файл будет сгенерирован, и если вы откроете свой проект с помощью этого, в разделе General
>Linked Frameworks and Libraries
он покажет, что Firebase добавлен и может быть импортирован из файлов проекта.
(см. это так нити для конкретного примера, где этот метод очистки необходимо использовать.)