У меня есть приложение для iOS с расширением сети, и я пытаюсь установить Firebase / Crashlytics на обоих:
- Хост-приложение (com.mycompany.appname)
- Расширение сети NEDNSProxyProvider (com.mycompany.appname.dnsproxy)
Я установил Firebase на обоих таргетах с Cocoapods, и мне удалось успешно настроить аварийную синхронизацию в хост-приложении, вызвать сбой и увидеть сбой на панели управления Firebase.
Затем я попытался сначала включить аварийную синхронизацию в расширении сети, выполнив следующие действия:
Из Как использовать Crashlytics с iOS / OS X сегодня просмотреть расширения?
- Скопировал
GoogleService-Info.plist
из хост-приложения в сетевое расширение - Добавлен сценарий запуска в сетевое расширение targhet
- В методе подкласса NEDNSProxyProvider
override func startProxy(options: [String: Any]? = nil, completionHandler: @escaping (Error?) -> Void) {
я добавил:
FirebaseApp.configure()
Crashlytics.sharedInstance().crash()
Очевидно, что расширение дает сбой, но на панель управления Firebase отчеты не отправляются.
В консоли я вижу:
5.16.0 - [Firebase/Core][I-COR000008] The project's Bundle ID is inconsistent with either the Bundle ID in 'GoogleService-Info.plist', or the Bundle ID in the options if you are using a customized options. To ensure that everything can be configured correctly, you may need to make the Bundle IDs consistent. To continue with this plist file, you may change your app's bundle identifier to 'com.mimecast.SecurityAgent'. Or you can download a new configuration file that matches your bundle identifier from https://console.firebase.google.com/ and replace the current one.
В этом есть смысл, у целей разные идентификаторы пакетов.
Итак, я создал другое приложение в проекте Firebase с правильным идентификатором пакета com.mycompany.appname.dnsproxy, я загрузил новый GoogleService-Info.plist
, запустил приложение и выполнил первоначальную настройку приложения, но очевидно, сетевое расширение никогда не вызывает серверную часть firebase, вызванный сбой не регистрируется, и я даже не могу завершить начальную настройку, и я застрял на шаге Checking if the app has communicated with our servers. You may need to uninstall and reinstall your app.
.
Любая идея? Я не вижу странного журнала Firebase в консоли или ошибки.