
Еxey
04.11.2016
08:55:43
всякие сми еще

George
04.11.2016
08:56:38
один хороший проект точно есть
рамблер касса
всё остальное не нужно.

Google

Еxey
04.11.2016
08:57:20
закапывайте

Andrew
04.11.2016
09:00:02
Подскажите пожалуста:
Для хранения сессии в проекте задействовали NSHTTPCookieStorage. Сервер во время аутентификации возвращает Cookie и они автоматически сохраняются в sharedHTTPCookieStorage.
Это позволяет автоматически авторизовать WebView, которые ходят на веб интерфейс сервера.
Но судя по всему иногда, по непонятной мне причине, эти Cookie просто исчезают и перестают передаваться.
У меня есть дамп запросов зафиксировавший такую ситуацию.
Из приложения тоже ничего не сбрасывалось (По крайней мере зафиксировать не удалось пока). Время жизни уходит далеков будущее.
Есть какие-то ситуации, при которых система может сама принять решение об очистке этих cookie?
Может стоит вообще отказаться от такого подхода?

Александр
04.11.2016
09:00:28
библиотека уже залита?
можно качать?

NIKOLAY
04.11.2016
09:03:08


Andrew
04.11.2016
09:04:29
Я это все затеял в надежде на то что все WebView могут быть авторизовазы без дополнительных усилий.

NIKOLAY
04.11.2016
09:06:06
У нас такая схема не работала, все скрипты, лог которых в приложении нельзя посмотреть (90% всех сайтов как оказалось) не отрабатывали

Andrew
04.11.2016
09:06:14
Ну и возможно в будущем в iOS можно будет их расшарить с Safari, как в МакОс

NIKOLAY
04.11.2016
09:06:28
Web view я надеюсь WebKit хотя бы?
Не uiwebview?

Andrew
04.11.2016
09:06:53
Нет, UIVewbView

NIKOLAY
04.11.2016
09:07:02
iOS 7?

Google

Andrew
04.11.2016
09:07:46
Точно не помню но с WebKit была какая-то значительная заморочка. + есть сторонние SDK с UIWebView.

NIKOLAY
04.11.2016
09:08:07
Иначе выбор не понятен. Apple четко написали, что с 8ки никаких uiwebview. Они текут и сделать нормально нельзя
Когда мы сделали отказ от uiwebview в пользу WebKit, то куча проблем отпала

Andrew
04.11.2016
09:08:54
Да, я видел что они планируют отказываться. Видимо придется переходить на них всетаки.
По моему как раз в WebKit этот sharedStorage не работает в принципе. Т.е. cookie туда придется добавлять через JavaScript верно?
Если сервер использует авторизацию через Cookie - общую как для веб-версии так и для модильной, удастся в WKWebView после авторизации приложения эти Cookie передать без боли?

NIKOLAY
04.11.2016
09:11:47
Вообще с куками мутная тема. После очень долгих мучений единственное решение, которое у нас заработало - то, что я написал
*заработало во всех случаях

Andrew
04.11.2016
09:13:38
А как вы сделали этот кастомный хеадер для запросов из WKWebView? Там можно модифицировать запрос до его осуществления?

Еxey
04.11.2016
09:19:07
Написал адскую строчку для отладки
let allHeight = firstRootTableView.allCells.reduce(CGFloat(0)) { if let cell = $1 as? ContainerCell { return $0 + cell.rowHeight }; return $0 }

Constantine
04.11.2016
09:20:00
Мб сегодня больше людей увидят мой вопрос. Если кто знает, то расскажите)
помогите с transition animation. очень стал инересовать этот вопрос, разобрался только как красиво пушить или презентить контроллеры, но вот не совсем понимаю, как из двух вьюх делают один контроллер. пример приложения Tinder

Dmitriy
04.11.2016
09:21:25
такой вопрос:
есть 3 вида источника инфы
1 -> телефонная книга
2 -> локальная база
3 -> онлайн база.
Надо на выходе получить обьект, поля которого заполнены из какого-то одного из источников либо из двух либо из трех (по очереди включается каждый источник, для заполнение отсутствующих данных, если в предыдущем источнике их нет).
Как это лучше всего организовать? связка Адаптер + Билдер патерны для этого подходят? Или есть решения уже для таких задач другие?

Еxey
04.11.2016
09:22:18
задача синхронизации

Dmitriy
04.11.2016
09:23:31
входных данных 2 вида: это либо номер телефона (для телефонной книги) либо уникальный идентификатор (для остальных двух). Имея номер, можно получить идентификатор (но не во всех случаях), имея идентификатор, можно получить номер телефона (но не во всех случаях)

Haile
04.11.2016
09:34:29

Constantine
04.11.2016
09:39:09

Ivan
04.11.2016
09:40:01
Потом в этом контейнре бери еще вьюхи
И анимируй как хочешь

Google

Constantine
04.11.2016
09:46:15
Спасибо, буду разбираться

@OlegLinok
04.11.2016
10:30:52
https://telegram.me/joinchat/CnmJ2D6mdBA1tb0kBX4e3Q
заказы на приложения

Антон
04.11.2016
11:45:17
проходил собеседование в варгейминг
задачка
оптимизировать код по скорости выполнения (представить, что компилятор этого делать не умеет)
int func(int k)
{
int result = 0;
int n = k % 2;
if(n == 0) result += 5;
else result += 8;
return result;
}

Павел
04.11.2016
11:46:58
int func(int k)
{
if(k % 2) return 5;
else return 8;
}

Антон
04.11.2016
11:47:17
еще оптимальнее можно

Haile
04.11.2016
11:47:17
небось битами еще чонибуь сделать надо

Павел
04.11.2016
11:47:36
дыа, но я не очень в битовых операциях

Александр
04.11.2016
11:47:49
битоебство же
да

Павел
04.11.2016
11:47:55
тут если последний бит 0 или 1 чекнуть надо

Александр
04.11.2016
11:47:57
это по-моему на первых курсах вуза такую хуйню

Антон
04.11.2016
11:48:03

Haile
04.11.2016
11:48:04
if n & 1 return 8 else return 5

Александр
04.11.2016
11:48:07
СДВИГИ

Haile
04.11.2016
11:48:21
хуиги

Антон
04.11.2016
11:48:21

Павел
04.11.2016
11:48:26
что-то вроде k&1 и что-то там

Антон
04.11.2016
11:48:35
от ифа избавиться

Google

Александр
04.11.2016
11:48:36
return n & 1 ? 8 : 5

Антон
04.11.2016
11:48:53

Павел
04.11.2016
11:48:58
фигня, в ту же конструкцию развернется

Александр
04.11.2016
11:49:01
от ифа избавился

Антон
04.11.2016
11:49:01
триножник

Александр
04.11.2016
11:49:03
не было в тз

Антон
04.11.2016
11:49:18
было

Admin
ERROR: S client not available

Haile
04.11.2016
11:49:18

Павел
04.11.2016
11:49:33
какая-нить фигня с адресами

Haile
04.11.2016
11:49:36
яб так написал в комменте

Антон
04.11.2016
11:49:37
мое решение было 5 + (n & 1) * 3
он сказал ок

Павел
04.11.2016
11:49:55
хм

Haile
04.11.2016
11:50:02
заебись

Павел
04.11.2016
11:50:08
а вот эти все умножения оптимальнее сравнения?

Haile
04.11.2016
11:50:12
яб твой код не принял в пулл реквесте
если честно

Александр
04.11.2016
11:50:30
Лол да
Ну

Google

Александр
04.11.2016
11:50:42
Геймдев это

Антон
04.11.2016
11:50:45
ты мой код не видел, ты бы от него обкончался весь и помер бы от недостатка белка

Александр
04.11.2016
11:50:46
Другая вселенная

Павел
04.11.2016
11:51:07
геймдев это да

Александр
04.11.2016
11:51:10

Haile
04.11.2016
11:51:15

Павел
04.11.2016
11:51:28
полон упоротого олимпиадства

Александр
04.11.2016
11:51:39

Ivan
04.11.2016
11:51:43
в геймдеве даже код на жавке можно увидеть
кекекек

Haile
04.11.2016
11:51:46

Gleb
04.11.2016
11:52:00
от вайпера блевать хочется

Александр
04.11.2016
11:52:05
И весь UI на Безье
Вот это да, вот это супер код!

Павел
04.11.2016
11:52:34
ладно, что там еще на собесе в варгаминге спрашивают?

Антон
04.11.2016
11:52:38
задачка номер 2. есть 2 контейнера - вектор и лист, заполненных прсото интами. мы пробегаемся и находим их сумму. надо сравнить скорость этих контейнеров в этой задаче

Dmitriy
04.11.2016
11:52:43
скоро до асемблера доберемся