Size: a a a

iOS Developers — русскоговорящее сообщество

2021 May 19

А

Александр in iOS Developers — русскоговорящее сообщество
Всем привет, в своем приложении я пытаюсь выгрузить видео на сервер как в обычном так и фоновом режиме. Для этого использую конфигурацию с бекграунд и uploadTask(with:from:)
let configuration = URLSessionConfiguration.background(withIdentifier: identifier)
session = URLSession(configuration: configuration, delegate: self, delegateQueue: nil) let task = session.uploadTask(with: request, fromFile: localURL)

После выгрузки видеофайла,  в ответ  мы получаем токен (uploadToken).  Его необходимо его так же отправить, что бы видео стало доступным на сервере.
Но если приложение работает в фоне, как это сделать ? Поддержка Эпл написала что смотреть в сторону BGAppRefreshTask.
Подскажите пожалуйста где в таком случае вызывать запрос на отправку токена.
источник

SK

Serge Kozlov in iOS Developers — русскоговорящее сообщество
Спасибо
источник

D

Dmitriy in iOS Developers — русскоговорящее сообщество
Почему я выставил вьюхе ширину UIScreen.main.bounds.width а она не во весь экран?
источник

DK

Denis Kim in iOS Developers — русскоговорящее сообщество
кто-то ее лэйаутит по-другом после этого
источник

DK

Denis Kim in iOS Developers — русскоговорящее сообщество
или ее часть перекрывается другими элементами (то есть все таки на весь экран, но пользователь этого не видит)
источник

D

Dmitriy in iOS Developers — русскоговорящее сообщество
Слева ровно, а справа не дотягивает, после задания ширины только верх и низ границы ставятся
источник

PG

Pavel Gubarev in iOS Developers — русскоговорящее сообщество
Коллеги, привет. Никто не хочет покритиковать тестовое задание? Как по мне — сделано ок, но работодателям не нравится https://github.com/pavelgubarev/openWeather . Хочу сделать лучше, но не знаю, что править. Спасибо!
источник

KS

Kei Sidorov in iOS Developers — русскоговорящее сообщество
CitiesListViewController кто ему данные провайдит? Протоколом не закрыт
источник

KS

Kei Sidorov in iOS Developers — русскоговорящее сообщество
а где-то презентер вовсе не использется. (WeatherViewController)
источник

KS

Kei Sidorov in iOS Developers — русскоговорящее сообщество
блин, прокрастинирую
источник

PG

Pavel Gubarev in iOS Developers — русскоговорящее сообщество
CustomTabBarController ему провайдит данные. то есть презентер (через протокол) даёт данные главной вьюхе (CustomTabBarController), а она уже отдаёт дочерней CitiesListViewController. Или это не ок?
источник

PG

Pavel Gubarev in iOS Developers — русскоговорящее сообщество
всякая вьюха _должна_ общаться с презентером? или допустимо раздавать данные через один класс?
источник

KS

Kei Sidorov in iOS Developers — русскоговорящее сообщество
Не ок. CustomTabBarController — по хорошему он должен быть «тупым» отвечать только за инициализацию и навигацию.

Грузить данные должен тот экран, где они будут показаны. Если эти данные используются на нескольких экранах и их нет надобности грузить заново, то нужно сохранить в сервис какой-нибудь. А потом брать эти данные там, где нужно.

Если ты заявляешь что у тебя есть архитектура и она kind-a-MVP то презентеры должны быть у каждой самостоятельной вьюхи (вью контроллера). Вьюха является самостоятельной если она несет функциональную нагрузку, а не создана для скрытия кода. (Пример функциональной вьюхи — ячейка таблицы, пример скрытия кода — кастомный свитчер, кастомный лейбл)
источник

PG

Pavel Gubarev in iOS Developers — русскоговорящее сообщество
Спасибо большое!
источник

PG

Pavel Gubarev in iOS Developers — русскоговорящее сообщество
других замечаний нет?
источник

KS

Kei Sidorov in iOS Developers — русскоговорящее сообщество
По хорошему, CitiesListViewController должен спрашивать свой презентер,  «дай мне кол-во строк в таблице», «дай мне презентер для ячейки с индексом i».

Используя такое задроство код потом можно будет покрыть тестами, т.к. презентер можно будет протестировать отдельно от вью. Что он загрузил данные, что отдал нужное кол-во, что на i-й строке такие данные.
источник

AK

Anatoly Kustov in iOS Developers — русскоговорящее сообщество
Если бы я давал тестовое задание, я бы точно не хотел его увидеть на SB.
Но я бы это явно обговорил с кандидатом.
источник

AK

Anatoly Kustov in iOS Developers — русскоговорящее сообщество
для мне это как история с
- Отсортируйте массив
- array.sort()
источник

KS

Kei Sidorov in iOS Developers — русскоговорящее сообщество
Ну это 100% нужно обговаривать заранее. Или, если не хочется прямо, описать размер команды и горизонт поддержки. SB не демон, просто колючий сука)
источник

PG

Pavel Gubarev in iOS Developers — русскоговорящее сообщество
прошу прощения, туплю. что такое SB?
источник