Не удалось успешно обновить информацию о сети во время инициализации

Я получаю вышеупомянутую проблему все время, когда я впервые запускаю приложение за день. Когда я впервые запускаю приложение, я делаю вызовы сервера, чтобы получить некоторые данные, а затем воспроизвести анимационное видео. Серверные вызовы находятся в отдельном потоке, чем основной поток пользовательского интерфейса. Это как-то связано с сетевым достижимостью или анимационным видео? Я думаю, что первая часть является основной проблемой, но она не может воссоздать все это время.

Кто-нибудь испытал эту проблему?

Ниже приведен код, когда я впервые запускаю приложение.

override func viewDidLoad() {
        super.viewDidLoad();


        self.navigationController?.navigationBarHidden = true;
        self.view.backgroundColor = UIColor.whiteColor();
           dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0)) { () -> Void in
            Items.setup(); //AFNetworking call
        };

        animationViewController.delegate = self;
        animationViewController.view.autoresizesSubviews = true;
        animationViewController.view.autoresizingMask = [.FlexibleLeftMargin, .FlexibleRightMargin];
        animationViewController.view.center = CGPointMake(self.view.bounds.size.width / 2, self.view.bounds.size.height / 2);

        self.view.addSubview(animationViewController.view);    

    }

Ответ 1

Я решил эту проблему в Xcode 9.1 с шагами ниже.

1. Выберите симулятор

2. Выберите "Отладка" в верхних пунктах меню.

3.Выберите Location из списка меню Debug.

4. Выберите местоположение Apple.

Ответ 2

Проверьте, есть ли у вас точка прерывания исключения для захвата "Все исключения" в навигаторе точек останова. Это исправило это для меня.

Ответ 3

У меня была аналогичная проблема. Оказывается в App/Capabilities, у меня есть Wireless Accessory Configuration с некоторыми красными предупреждениями. Нажмите кнопку, чтобы автоматически решить проблему.

Не уверен, что это сработает для вас. Я использую Xcode 8.

Ответ 4

Проблема: то же самое с Xcode 9.0 iOS11. Разрешение: для новой iOS требуется вручную включить конфиденциальность для новых приложений развертывания. Обновления приложения не нужны. Выполните следующие шаги: (1) iPhone "Настройки" значок: нажмите (2) "Конфиденциальность": нажмите (3) "Услуги по размещению": нажмите (4) [Ваше приложение]: нажмите на свое приложение (5) "При использовании приложения": нажмите

Ответ 5

Также испытывал это, исправил его, предоставив симулятору местоположение по умолчанию. Это может быть запах кода, поэтому следите за тем, как вы обрабатываете новые разрешения на размещение в iOS11.

Ответ 6

Вы могли бы переопределить loadView() без вызова супер-метода.

+ Изменить

override func loadView() {

}

к

override func loadView() {
  super.loadView()
}