У меня есть приложение, выпущенное в App Store, и я разрабатываю новое обновление для него. Я использую testFlight и по какой-то причине на testFlight при обновлении с версии, которая была раньше, приложение становится пустым черным экраном при открытии. Однако это не происходит, если он удален, а затем установлен. Есть одно исключение: если я обновлюсь перед входом в систему (не включать после выхода из системы), я также не получу черный экран. (Я использую Firebase и Google для входа в систему)
Кроме того, в этом обновлении я меняю места хранения данных на устройстве, чтобы использовать их для расширения. Поскольку после входа я храню данные в старых местах, я подумал, что это может быть связано с этим изменением. Однако, когда я закомментировал это полностью, мне не повезло.
Я также проверил, чтобы убедиться, что мой Основной интерфейс был настроен правильно.
Я использую SWRevealViewController в качестве моего корневого контроллера представления,Когда этот сбой происходит, контроллер представления не представляет ни передний, ни задний контроллер, прикрепленный к нему. Я не знаю, как это повлияло бы на мой код. Ни контроллер переднего, ни заднего вида не вызывает viewDidLoad.
Есть какие-либо предложения о том, что это может быть? Вот мой код в didFinishLaunching
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]? = nil) -> Bool {
// Override point for customization after application launch.
notificationCenter.delegate = self
FirebaseApp.configure() //Firebase
Database.database().isPersistenceEnabled = true
Messaging.messaging().delegate = self
GIDSignIn.sharedInstance().clientID = FirebaseApp.app()?.options.clientID //google sign-in
application.registerForRemoteNotifications()
UNUserNotificationCenter.current().delegate = self //Notifications
let authOptions: UNAuthorizationOptions = [.alert, .badge, .sound]
UNUserNotificationCenter.current().requestAuthorization(options: authOptions) {_,_ in }
UIApplication.shared.applicationIconBadgeNumber = 0
UINavigationBar.appearance().barStyle = .blackOpaque
// set up your background color view
let colorView = UIView()
colorView.backgroundColor = UIColor.white.withAlphaComponent(0.4)
// use UITableViewCell.appearance() to configure
// the default appearance of all UITableViewCells in your app
UITableViewCell.appearance().selectedBackgroundView = colorView
getAllData() //function that gets all data
if updatedToNewDataSystem == nil { //var that confirms if it was in new location (nil means no, true is yes, and false is new user)
runWithStandardUserDefaults() //moves data to new location
}
signInController.setup() //check if user is signed in
return true
}
Наконец, вот некоторые журналы, которые я обнаружил, которые не появлялись, когда приложение работало правильно:
2019-10-14 16:26:40.421963-0400 SHS Assistant[443:24394] [] tcp_input [C3.1:3] flags=[R] seq=1279028434, ack=0, win=0 state=LAST_ACK rcv_nxt=1279028434, snd_una=3119232704
2019-10-14 16:26:40.425750-0400 SHS Assistant[443:24394] [] tcp_input [C3.1:3] flags=[R] seq=1279028434, ack=0, win=0 state=CLOSED rcv_nxt=1279028434, snd_una=3119232704
2019-10-14 16:26:40.427276-0400 SHS Assistant[443:24394] [] tcp_input [C3.1:3] flags=[R] seq=1279028434, ack=0, win=0 state=CLOSED rcv_nxt=1279028434, snd_una=3119232704
Я действительно ценю любую помощь, которую могуполучить по этому вопросу! Заранее спасибо!