Память увеличивается, но не освобождается при увольнении [Mapbox] - PullRequest
0 голосов
/ 10 июля 2020

Я использую MapBox для навигации в своем приложении. После выбора источника и места назначения я перенаправляю его в Mapbox SDK, показывая экран. В этот момент моя память увеличивается на 180 МБ, после отключения от контроллера моя память не освобождается, и она постоянно увеличивается. Я сделал следующее в моем viewDidDisappear.

override func viewWillDisappear(_ animated: Bool) {
    UIApplication.shared.isIdleTimerDisabled = false
    locationManager.showsBackgroundLocationIndicator = false
    mapview = nil
    suspendNotifications()
    routeController.suspendLocationUpdates()
    
}

После нескольких представлений и увольнений с другим местоположением память увеличивается до 680 МБ, а через определенный период приложение получает cra sh.

I прикрепили экраны инструментов, где показаны функции mapbox, которые увеличиваются после закрытия контроллера.

enter image description here введите описание изображения здесь

1 Ответ

0 голосов
/ 10 июля 2020

Добавить код очистки в метод deinit

  deinit {
    UIApplication.shared.isIdleTimerDisabled = false
    locationManager.showsBackgroundLocationIndicator = false
    mapview = nil
    suspendNotifications()
    routeController.suspendLocationUpdates()
 }
...