Таким образом получал access_token лишь из Facebook, остальные приложения не требовались. Пример написан в далеком 2015 году, сейчас возможно нужны небольшие доработки. Насколько я помню, у приложения VK тоже была похожая активность для авторизации, как и у Facebook:
FacebookAppName = 'com.facebook.katana';
FacebookActivityName = 'com.facebook.katana.ProxyAuth';
Схема следующая:
Сканируем установленное приложение и находим активность для авторизации.
Из своего приложения запускаем эту активность и передаем требуемые данные.
Получаем ответ от приложения и вытаскиваем access_token.
Делаем HTTP запрос к API и получаем требуемую информацию о пользователе.