2016-11-06 4 views
1

Конфигурирование Firebase в соответствии с рекомендациями по их лучшим практикам и использованием модуля «Firebase/Crash» прерывает вращение устройства в чистом проекте iOS, созданного в Xcode 8.1, с использованием Swift 3, ориентированного на iOS 10.1.Firebase Crash pod прерывает вращение устройства на iOS

Действия по воспроизведению

  1. Создание нового проекта IOS (например, с помощью шаблона IOS «Вкладки Application»).
  2. Добавьте струны «Firebase/Core» и «Firebase/Crash» в ваш подканал, установите контейнеры и откройте вновь созданный файл рабочей области для вашего проекта.
  3. Добавьте соответствующий проект GoogleService-Info.plist в свой проект.
  4. Переопределить init() в вашем делете приложения, чтобы настроить Firebase, как показано ниже.
  5. Обратите внимание, что информация о развертывании для целевой цели приложения отмечена галочками в разделе «Ориентация устройства» для «Портрет», «Пейзаж слева» и «Пейзаж справа».
  6. Запустите приложение в симуляторе и поверните влево или вправо.

Настройка Firebase

Firebase должен быть настроен в AppDelegate.swift следующим образом:

override init() { 
    super.init() 
    FIRApp.configure() // This line breaks rotation if "Firebase/Crash" is installed. 
} 

Firebase в "best practices" руководство для прошивки утверждает, что все "может пойти не так", когда Firebase не настроен путем переопределения init() в делегате приложения. Подразумевается, что это ошибка программирования для настройки Firebase в application(_:didFinishLaunchingWithOptions:). Однако, если принять последний подход, устройство вращается, как и ожидалось.

Other SO answers также рекомендуют руководство по наилучшим практикам Firebase.

Вопросы

  1. Почему настройка Firebase на этом пути вращения устройства перерыв?
  2. Если я хочу использовать как «Firebase/Crash», так и «Firebase/Database» с включенной автономностью, описанным в руководстве по лучшим практикам, что является подходящим способом настройки Firebase без нарушения вращения устройства?

Похоже, что эта проблема возникла у at least one other user.

ответ

0

Служба поддержки Firebase сообщила, что соответствующий способ настройки Firebase для iOS находится в application:didFinishLaunchingWithOptions: «Это правильный подход, и вы не должны сталкиваться с какой-либо проблемой».

В current documentation указано, что Firebase «обычно» настроена с использованием этого подхода.

Они также сообщили, что руководство для iOS «best practices» будет обсуждаться внутренне, чтобы определить, «все еще актуально или нуждается в обновлении».

+0

Я не уверен, если вы ответили на вопрос !?Я столкнулся с той же проблемой, что и этот ... Я последовал за шагом, как на сайте Firebase, но моя ротация устройства все еще не работает !!! – Learn2Code

+0

Когда я сконфигурировал Firebase в 'application (_: didFinishLaunchingWithOptions:)' вместо переопределения 'init()', как рекомендовал Firebase Support, проблема исчезла. – jamesk

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