Ольга
Andrew
да, доклад хороший, единственно на 21 минуте там key animations должны выставляться в долях исходного duration (диапазон от 0 до 1), а не в секундах (duration / 2 как в презентации) + он везде дергает VC.view, а не подтягивает их из transitionContext
Денис
CoreData и вправду такая медленная? Вставить 7к записей на ipad даже без сохранения контекста занимает 3 секунды.
Денис
Или вот другой пример. Удаление одного объекта, которое приводит к каскадному удалению 7к записей(отношения много к 1). Все это происходит внутри дочернего контекста в фоне (NSPrivateQueueConcurrencyType). Сохраняю я только сам дочерний контекст. Т.е даже без сохранения в саму базу через PSC. 12 секунд. При этом, в момент сохранения дочернего контекста происходит мердж записей в родительскй контекст (NSMainQueueConcurrencyType), что приводит к нехилому лагу интерфейса секунды в 4.
Денис
Денис
То есть, даже при такой конфигурации поток данных все равно прокачивается через главный поток. Вот вопрос, какую схему вы у себя используете, если количество единовременно обрабатываемых объектов составляет в районе 7 тысяч записей?
Max
Подскажите плс в чем дела? У меня приложение отслеживает место положение в бекграунде NsLocationAlwaysUsageDescriotion есть бекграунд location есть и реквест от локейшин менеджера на постоянное использование есть и только если ответ положительный начинает отслеживать локацию и тд но эппл мне 2. Раз reject кидает с таким текстом :
Max
We noticed that your app does not request and obtain the user's consent prior to accessing their location data, which is not allowed on the App Store.
Александр
В общем проблема такая - собираю без бинарок - проект не видит фреймворки (все добавлено, все в копиях и тп) Если собираю с бинарками - две либы не поддерживают х64 архитектуру - то есть нету имплементаций у классов. хкод 9.2, хай сиера, проект полностью на обж
У меня была ситуация с одной либой. В зависимостях подтягивался бинарник, но ошибка отсутствия x64 символов. Оказалось, надо было в настройках основного проекта добавить пару эпловских библиотек для линковки (Core что-то там)
Insaf
ты не пробовал locationManager.stopUpdateLocation вызывать?
Insaf
чтоб он переставал следить
Insaf
?
Max
конечно
Max
ты не пробовал locationManager.stopUpdateLocation вызывать?
Все хорошо работает когда надо перестает когда надо начинает отслеживать заклебалься тестировать , не понимаю в общем чем apple не довольны ...
Artem
Есть экраны с нав баром У первого идёт таблица, к ней получаю данные из сети гет запросом У следующего экрана я делаю пост Подскажите метод vc Который при возврате на предыдущий нав бар обновлял бы таблицу, а то я до сих пор все в viewDidLoad пихаю
Aleksey
на хабре есть норм статься про жизненные циклы, почитай
Artem
Спасибо)
Insaf
WhenInUse?
Insaf
Или always?
Insaf
ок, а пермишн спрашивает у пользователя? Странный вопрос, понимаю, но там написано про это
Max
да конечно locationManager = CLLocationManager() locationManager.desiredAccuracy = kCLLocationAccuracyNearestTenMeters locationManager.distanceFilter = 200 locationManager.allowsBackgroundLocationUpdates = true locationManager.requestAlwaysAuthorization() locationManager.pausesLocationUpdatesAutomatically = false locationManager.delegate = self
Ilkhom
где запрашиваешь доступ
Insaf
в плисте текст
Insaf
есть?
Max
NSLocationAlwaysUsageDescription есть UIBackgroundModes <array> <string>fetch</string> <string>location</string>
Ilkhom
да я уже пожалел что выбрал этот термин
Max
да есть
Insaf
а текст описания для чего?
Vadim
в описании апа надо написать просто что приложение может тратить заряд из за использования локации, реджект 100% был не бинарника а метадаты
Max
а текст описания для чего?
С момента принятия заявки и до ее окончания нам необходимо отслеживать ваше местоположение в целях контроля процесса перевозки груза.
Max
это типа текст в NSLocationAlwaysUsageDescription
Ilkhom
может с саппортом поговоришь и уточнишь чего именно они хотят
Max
может с саппортом поговоришь и уточнишь чего именно они хотят
До этого я доказывал что все нормально работает и они такие ну тогда сабмить и добавь заказ а то мы ленивые сами не можем создать, я добавил заказ на акк и кинул еще раз , сейчас спрошу в чем же все таки проблема ...
Max
просто ответа от них можно ждать хоть 2 дня , уже неделю вожусь с этим по 2 дня ревью и ответы от apple а 🙂
Ilkhom
ну это нормальная практика с эпл сапортом
Serhii
используй такую схему
Serhii
делаешь запись через приватный контекст После записи мержи в мэин
Денис
делаешь запись через приватный контекст После записи мержи в мэин
приватный контекст всегда в одном экземпляре висит?
Serhii
ты от него можешь создать дочерний
Serhii
но приватный
Serhii
создавать мэйн смысла нет)
Денис
а в момент мерджа в главный контекст интерфейс не будет ли так же лагать?
Serhii
чтение происходит быстрее записи
Serhii
Ещё есть схема
Serhii
Serhii
но я не работал с таким набором данных, что бы у меня загибалась core data
Serhii
но ты попробуй)
Serhii
как какая? приватный (который в мэйн ветке) стянул в себя все изменения в бэке, а мейн от него пересоздался
Serhii
набрось?
Денис
main не пересоздается, а постоянно должен висеть.
Денис
к нему например FRC подключен
Денис
раньше я писал на PL/SQL под oracle вот там были скорости
Денис
все эти orm тормознутые
Serhii
такс, стопэ) под контекст мейн не идет речь об одном контексте. При переходе на новый скрин, создаешь от приватного контекста(мэйн ветки) новый мэйн контекст. Я вот об этом. А если речь идет об скрине, где ты скачал и сразу должен отобразить то да, тут мержить нужно. Смысл в том что мейн контекст для всего приложения не один
Serhii
ну и я не юзал такую схему, набрасывать сильно не буду, хороша или плоха
Serhii
думаю в инете можно почитать
Денис
а зачем нужны несколько main контекстов
Serhii
если я загрузил 10 к записей, которые отображают мне реквизиты банков, нахуй мне это на главном экране? Редактировать я их буду ? тоже нет, о каком обмене сущностей идет речь?
Serhii
ну ок
Serhii
@liiiiiiiiiiiiiiiiiiiiiiiiiiiil так а че рилм не юзаешь, он же мега крут и быстр?
Serhii
ну я его не юзал(
Денис
@liiiiiiiiiiiiiiiiiiiiiiiiiiiil так а че рилм не юзаешь, он же мега крут и быстр?
в целях обучения начал на кордате. не стал сразу на realm бросаться
Serhii
та говорят, что вообще пофиг, типа в топку кордату, юзайте рилм
Serhii
Serhii
вот ребята вообще два координатора юзают
Serhii
почему все эти данные 7к на телефоне? это справочник?
Serhii
но если справочник, ты его раз выгрузил и юзай. Поделитесь юзкейсом зачем столько записей тащить в телефон?
Денис
почему все эти данные 7к на телефоне? это справочник?
нужна локальная структура файлового хранилища. если делать запрос с каждый переходом между папками, то будет тормознутый интерфейс
Max
а что приложение делает?
Ну вообще много чего , есть разные юзеры с разными правами и экранами, и именно где нужно следить за пользователем это юзер водитель. Когда у водителя есть заказ нужно заказчику предоставлять реальное место положения и тд
Serhii
как часто ты выкачиваешь все 7к?