Как зайти в вк через java
Перейти к содержимому

Как зайти в вк через java

  • автор:

Вклиент 2.32

Вклиент 2.32 Вклиент 2.32 Вклиент 2.32Вклиент — мобильный клиент социальной сети «В Контакте», основным преимуществом которого является простота, удобство и экономичность по сравнению с web версией так как данные в сжатом виде запрашиваются с сервера и нет необходимости загружать при каждом запросе файлы интерфейса чтоб отобразить страницу.

Telegram-канал создателя Трешбокса про технологии

В новой версии добавлено:

• поддержка чатов, пересланных сообщений;

• пункт меню «Люди которым это понравилось» для объектов;

• сохранение видеозаписей (поддерживается для видеозаписей которые размещены на серверах контакта);

• группы для всех пользователей, в группе пункт участники группы;

• контекстное меню при нажатии на объект;

• исправлена лента новостей;

Лучший Telegram-канал про технологии (возможно)

Скачать Вклиент 2.32 (jad)

Вирусы не найдены QR
application/octet-stream
Скачать Вклиент 2.32 (jar)
391,4 КБ

Вирусы не найдены QR
application/octet-stream
Скачать Вклиент 2.3 (jad)

Вирусы не найдены QR
application/octet-stream
Скачать Вклиент 2.3 (jar)
352,3 КБ

Вирусы не найдены QR
application/octet-stream
Последнее изменение: 1 октября 2023, 09:20
lena_april , 16 октября 2011, 15:32 # (. )
упорно пишет «ошибка авторизации», в том что ввожу правильные данные уверенна на 100%
Bobs , 16 октября 2011, 15:40 # (. )
У кого-то удается войти?
Rost , 16 октября 2011, 16:22 # (. )
У меня на эмуляторе все ок получилось.
mekena283 , 18 мая 2023, 19:59 # (. )
vanya09 , 16 октября 2011, 18:41 # (. )
на 6120с.идет но ужастно тормазит чтоб открыть что либо нужно ждать по 10мин.
VOLK31 , 4 января 2012, 12:49 # (. )

На Nokia 5130 версии 2.32 не заодит вообще. ни какую ошибку не выдаёт! А на версии 2.3 ошибка авторизации.

POMbl4 , 16 января 2012, 01:40 # (. )

отлично работает. Грузит быстро, тормозов нет. Только с сохранением видео проблема, после скачкавния ролик идет всего 10 секунд хотя его длинна 5 минут. 🙁

Rost , 16 января 2012, 01:41 # (. )
GRIXAN777 , 20 августа 2012, 23:42 # (. )
у меня не заходит
chaponas , 21 августа 2012, 00:01 # (. )
у меня все прекрасно заходит) я еще и скачивать музыку умудряюсь))) nokia c6-00
GRuNGeR_1998 , 20 ноября 2012, 00:46 # (. )
Стар заходит?
telepuzov , 27 февраля 2013, 03:30 # (. )

Скачал и установил версию вклиент 3.00, прога зачетная конечно, но авторизация сделана видимо через старую платформу, из-за чего при входе в программу приходит временный пароль от страницы, а это очень не радует. Прога быстрая и удобная, правда жаль, что послушать музыку через нее не получится, сразу открывается ссылка в браузере на мелодию для скачивания. И странно почему когда приходит временный пароль от страницы, то в сообщении говориться что пароль для вашего Android устройства, хотя у меня symbian belle?!

Как сделать авторизацию с помощью ВКонтакте в десктопном приложении

Обложка поста Как сделать авторизацию с помощью ВКонтакте в десктопном приложении

В данной статье для примера рассмотрено десктоп-приложение на Java, однако общие принципы и схема будут аналогичными для любого другого языка.

Как происходит авторизация?

Авторизация ВКонтакте ничем не отличается от любой другой авторизации через сторонний сервер. Этот процесс отлично описал пользователь StackOverflow qnub:

  1. На сервисе (в данном случае ВК) необходимо зарегистрировать приложение и получить ключ API.
  2. После этого приложение (сайт) могут делать запрос личных данных пользователя у стороннего сервиса через этот самый API, для чего:перенаправить пользователя (браузер пользователя посредством посылки ему HTTP-ответа 302 Redirect) по специально сформированной ссылке на сервис предоставляющий API;пользователь произведёт там какие-то действия, предположительно авторизуется и разрешит доступ к данным.
  3. По завершении действий пользователь будет перенаправлен сторонним сервисом посредством всё того же 302 Redirect на URL переданный в параметрах специально сформированной ссылки.

Шаг первый. Зарегистрировать своё приложение и получить ключ

Этот шаг самый простой. Нужно перейти на страницу ВК для разработчиков: https://vk.com/dev — и нажать на кнопку “Создать приложение”. Тип указываем как “Standalone-приложение”, имя, естественно, указываем произвольное. После этого в разделе “Мои приложения” появится (что бы вы думали?) ваше приложение. Смело нажимайте “редактировать”, затем переходите в раздел “Настройки” — там первой же строкой вы увидите надпись «ID приложения: 1234567». Эти цифры — всё, что вам нужно запомнить для авторизации.

Заметьте, что нет никакого смысла скрывать ID приложения — он публично показывается, например, при отправке сообщения на стену через это приложение. Ни токены, ни любую другую информацию украсть, используя ID, нельзя. В общем-то, вы можете использовать даже ID моего приложения (если вам нужно написать небольшой скрипт для себя).

Шаг второй. Формирование специальной ссылки

Далее вам нужно направить пользователя по специально сформированному адресу (её упоминания выделены жирным цветом в первом разделе статьи), где он подтвердит, что хочет разрешить вашему приложению выполнять какие-то действия со своим аккаунтом. Как же формируется эта ссылка?

Этот процесс подробно описан в документации. Однако, если вы обратились к этой статье, я предполагаю, что вам не хватило информации в документации, и поэтому перескажу всё своими словами. Ссылка имеет следующий вид: хост?параметры . Параметры имеют вид нескольких пар вида ключ=значение разделённых символами & .

Хост всегда остаётся неизменным: https://oauth.vk.com/authorize . Набор параметров так же неизменен:

  • client_id. Здесь стоит указать те самые цифры, которые мы добыли в первом шаге.
  • redirect_uri. Адрес, по которому будет перенаправлен пользователь. Для Standalone приложений это только https://oauth.vk.com/blank.html .
  • display. Этот параметр отвечает за то, как будет показываться страница авторизации. Доступно три варианта: page , popup и mobile . Если не уверены, используйте page .
  • scope. В этом параметре вам следует через запятую перечислить параметры доступа, которые вам необходимы. Полный список доступных параметров приведён на соответствующей странице документации. Обращаю ваше внимание, что можно не указывать вообще ничего и просто не писать этот параметр. Чтобы узнать, какие опции доступа вам нужны посмотрите в документацию методов, которые вы собираетесь использовать.
  • response_type. Указываем token и идём дальше.
  • v. Версия API. Актуальная — 5.59.

Пример ссылки, которая должна у вас получиться:

https://oauth.vk.com/authorize?client_id=1&display=page&redirect_uri=http://example.com/callback&scope=friends&response_type=token&v=5.59 

Шаг третий. Что дальше?

Дальше следует направить пользователя по сформированной ссылке. После того, как он проделает все необходимые для авторизации манипуляции, он будет перенаправлен на страницу, имеющую адрес

http://REDIRECT_URI#access_token=TOKEN3&expires_in=TIME&user_id=ID 

Нас интересует TOKEN. Как же направить пользователя на страницу из Java-приложения и как получить адрес страницы, на которую его перенаправит ВК (чтобы извлечь из неё токен)? Существует два способа.

Советский, через браузер по умолчанию

Если вы решили пойти по этому пути, то вы просто открываете браузер системы по умолчанию с полученной выше ссылкой, а пользователю каким-то образом сообщаете, что он должен скопировать из URL токен и вставить его в какое-то поле. Понятно, что у этого метода отвратительный UX, однако его можно реализовать легко и быстро. Вполне подойдёт, если вы пишете приложение для себя — чтобы скачать музыку или получать уведомления. Реализуется он следующим образом:

public String askToken(String link) throws IOException, URISyntaxException< //Opens link in default browser Desktop.getDesktop().browse(new URI(link)); //Asks user to input token from browser manually return JOptionPane.showInputDialog("Please input access_token param from browser: "); > 
Буржуазный, через веб-компоненты

Если вы решили пойти по этому пути, то вам потребуется использовать какую-либо стороннюю GUI-библиотеку (или по крайней мере JavaFX), у которой в арсенале есть свой компонент браузера. Над таким бразуером ваша программа будет иметь полную власть, и вы сможете извлечь адрес, на который вас перенаправил ВК, программными средствами. На JavaFX это можно реализовать следующим образом:

import javafx.application.Application; import javafx.beans.value.ChangeListener; import javafx.beans.value.ObservableValue; import javafx.scene.Scene; import javafx.scene.web.WebEngine; import javafx.scene.web.WebView; import javafx.stage.Stage; public class Main extends Application < public static final String REDIRECT_URL = "https://oauth.vk.com/blank.html"; public static final String VK_AUTH_URL = ""; //TODO. public static String tokenUrl; public static void main(String[] args)< System.out.println(Main.getTokenUrl()); >public static String getTokenUrl() < launch(Main.class); return tokenUrl; >@Override public void start(Stage primaryStage) throws Exception < final WebView view = new WebView(); final WebEngine engine = view.getEngine(); engine.load(VK_AUTH_URL); primaryStage.setScene(new Scene(view)); primaryStage.show(); engine.locationProperty().addListener(new ChangeListener() < @Override public void changed(ObservableValueobservable, String oldValue, String newValue) < if(newValue.startsWith(REDIRECT_URL))< tokenUrl=newValue; primaryStage.close(); >> >); > > 

Заключение

Таким образом, мы научились получать access token ВКонтакте, с помощью которого можно вызывать методы API. Если эта статья вызовет у сообщества интерес, в следующей статье я опишу, как вызывать те или иные API-методы с помощью токена, как проверять токен на валидность (метод secure.checkToken() , конечно), и напишу какое-нибудь демонстрационное приложение, например, для сохранения всей музыки из плейлиста на компьютер. Кстати, не стоит забывать, что на самом деле всё придумано до нас, и уже есть библиотеки для работы с VK API почти для любого языка. У нас есть подборка, в которой мы постарались собрать лучшие из них.

Если есть какие-то идеи или вопросы — добро пожаловать в комментарии (я их читаю и всем отвечаю). Так же вопросы можно задать в ЛС ВКонтакте.

Следите за новыми постами по любимым темам

Подпишитесь на интересующие вас теги, чтобы следить за новыми постами и быть в курсе событий.

Авторизация Вконтакте на java?

Среди читающих есть ли кто, кто уже реализовал что-то подобное и может поделиться кодом?

  • Вопрос задан более трёх лет назад
  • 18729 просмотров

1 комментарий

Оценить 1 комментарий

ideas4ru @ideas4ru Автор вопроса

Немного въехал в тему, говорят, что авторизация через логин и пароль может любой момент слететь, то есть быть закрытой ВК. Они рекомендуют авторизацию через браузер, то есть java приложение должно открыть браузер, и получить оттуда токен, если пользователь подтвердит нажатием на кнопку Войти.

Решения вопроса 0
Ответы на вопрос 2
Посмотрите эту статью ВКонтакте Android SDK. Там есть ссылки на исходники с авторизацией.
Ответ написан более трёх лет назад
Нравится 1 4 комментария
ideas4ru @ideas4ru Автор вопроса

А там авторизация по логину и паролю или через браузер? Представители ВК первый вариант не рекомендуют.

Через WebView
ideas4ru @ideas4ru Автор вопроса
А вы случаем не знаете, можно ли через WebView получить введенные пользователем логин и пароль?
Зачем вам логин и пароль введённый пользователем?
bracadabra @bracadabra
Если нужна авторизация без WebView, то она выглядит примерно следующим образом:

  1. //Получаем необходимы cookie
  2. HttpGet get = new HttpGet ( http : //vk.com/login.php?email=%s&pass=%s);
  3. HttpResponse response = mHttpClient. execute ( get ) ;
  4. if ( response. getStatusLine ( ) . getStatusCode ( ) ! = 200 )
  5. throw new UpdateException ( «Failed to obtain token» ) ;
  6. >
  7. //Делаем запрос на авторизацию
  8. get = new HttpGet ( «api.vk.com/oauth/authorize?client_id=_&redirect_uri=http%3A%2F%2Fapi.vk.com%2Fblank.html&response_type=code&scope=audio,offline» ) ;
  9. response = mHttpClient. execute ( get ) ;
  10. if ( response. getStatusLine ( ) . getStatusCode ( ) ! = 200 )
  11. throw new UpdateException ( «Failed to obtain token» ) ;
  12. >
  13. //Получаем последнюю ссылку на которую нас перенаправили
  14. final String lastLink = redirectHandler. getLastLocationURI ( ) . toString ( ) ;
  15. if ( lastLink. contains ( «oauth.vk.com/oauth/authorize» ) )
  16. throw new VkApiException ( «Failed to login!» ) ;
  17. > else if ( lastLink. contains ( oauth. vk . com / authorize ) )
  18. //Попадаем сюда, если у приложения нет подтвержденных разрешений
  19. final String approveLink = getApproveLink ( EntityUtils
  20. . toString ( response. getEntity ( ) ) ) ;
  21. get = new HttpGet ( approveLink ) ;
  22. response = mHttpClient. execute ( get ) ;
  23. if ( response. getStatusLine ( ) . getStatusCode ( ) ! = 200 )
  24. throw new UpdateException ( «Failed to obtain token» ) ;
  25. >
  26. >
  27. //Если всё хорошо, то получаем из последнего url код
  28. final String code = extractCode ( redirectHandler. getLastLocationURI ( ) . toString ( ) ) ;
  29. //Получаем токен с помощью библиотеки scribe
  30. final Verifier verifier = new Verifier ( code ) ;
  31. final Token token = mAuthSevice. getAccessToken ( EMPTY_TOKEN, verifier ) ;

PS раньше это работало, но вроде у них что то поменялось.

Ответ написан более трёх лет назад
Нравится 1 8 комментариев
ideas4ru @ideas4ru Автор вопроса

А что вы имеете ввиду под «WebView»?

То есть при таком способе приложению придется запрашивать пароль пользователя? Это не очень подходит.
Я это себе представляю, как нажатие кнопки войти и получения данных, желательно без браузера.

ideas4ru @ideas4ru Автор вопроса

Скорее WebView интересует, авторизация через браузер.
vk.com/developers.php?id=-1_37230422&s=1

Авторизация VK через Java

Идея такова: я пытаюсь сделать приложение на Java которое будет видеть друзей указанного пользователя. Но так как без авторизации ВК не показывает друзей пользователя, мне нужно авторизоваться, получить какие то данные об авторизации, а затем с этими данными послать запрос поиска по пользователям. Как можно такое осуществить? Смотрел Vk Api, но там судя по всему просто используются данные входящего человека. Я новичок в Java и программирования в общем, так что прошу немного понимания 🙂

Отслеживать

задан 18 июл 2016 в 15:32

nomorehumor nomorehumor

11 2 2 бронзовых знака

Почему бы не попытаться загуглить — «vk api java». Первая ссылка в которой разжёвывает человек на хабре — habrahabr.ru/post/144813 В чём соль вопроса?

18 июл 2016 в 15:55

@VictorPerov программа с хабра не работает, так как устраела.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *