vk-ios-sdk
vk-ios-sdk copied to clipboard
Авторизация, восстановление сессии, установка токена, правка api доков, NSCoding моделей
Раз Сделал возможным принудительно не открывать приложение для авторизации, даже если оно есть. Для этого добавил в перечисление VKAuthorizationOptions
элемент VKAuthorizationOptionsDisableApp
.
Два Добавил в wakeUpSession параметр для восстановления сессии без интернета.
+ (void)wakeUpSession:(NSArray *)permissions useInternetToUpdateSession: (BOOL) useInternet completeBlock:(void (^)(VKAuthorizationState, NSError *))wakeUpBlock;
Старый метод работает по прежнему.
Три Открыл метод [VKSdk setAccessToken:]
для ручной установки токена.
Четыре Добавил в VKApi доступ к api доков. Добавил в модель доков новое свойство type
.
Пять Все модели имплементят класс NSCoding. Для того, чтобы токен правильно восстанавливался (вместе с localUser), потребовалось, чтобы VKUser имплементил NSCoding. По коду было удобнее сделать это с VKApiObject.
В чём проблема с приложением?
@Dreddik кейс когда хочется войти под другим аккаунтом, нежели в офф клиенте.
Это плохая практика, надо убрать
Мне было бы интересно услышать аргументы в пользу этой самой плохой практики. Спорить не буду, просто интересно.
Вынуждая пользователя игнорировать приложение, вы теряете пользователей/игроков, потому что людям нужно всё время вводить логин/пароль. Авторизация через приложение и задумывалась для того, чтобы легко и в пару нажатий залогиниться в приложении или игре. Когда-нибудь мы сделаем в приложении возможность перелогиниться быстро, но пока нет
В приложении предполагалось сделать выбор - через приложение либо через браузер. Причём второй выбор в виде маленькой подписи. Зачем лишать пользователей такой возможности.
По поводу кейса с принудительным открытием в сафари.
Ещё не знаю как на iOS, но на андроиде есть проблема со старыми приложениями. Старых приложений ещё довольно много. Кто-то отключил обновление, а у кого-то закончилось место. Проблема уходит с установкой свежей версии приложения VK. На скрине можно видеть старый дизайн.
По этому поводу есть ишью в репе vk-android-sdk: https://github.com/VKCOM/vk-android-sdk/issues/101