HttpClient httpClient = new DefaultHttpClient();
// Делаем первый запрос
HttpPost post = new HttpPost("http://oauth.vk.com/authorize?" +
"client_id="+client_id+
"&scope="+scope+
"&redirect_uri="+redirect_uri+
"&display="+display+
"&response_type="+response_type);
HttpResponse response;
response = httpClient.execute(post);
post.abort();
//Получаем редирект
String HeaderLocation = response.getFirstHeader("location").getValue();
URI RedirectUri = new URI(HeaderLocation);
//Для запроса авторизации необходимо два параметра полученных в первом запросе
//ip_h и to_h
String ip_h= RedirectUri.getQuery().split("&")[2].split("=")[1];
String to_h=RedirectUri.getQuery().split("&")[4].split("=")[1];
// Делаем запрос авторизации
post = new HttpPost("https://login.vk.com/?act=login&soft=1"+
"&q=1"+
"&ip_h="+ip_h+
"&from_host=oauth.vk.com"+
"&to="+to_h+
"&expire=0"+
"&email="+email+
"&pass="+pass);
response = httpClient.execute(post);
post.abort();
// Получили редирект на подтверждение требований приложения
HeaderLocation = response.getFirstHeader("location").getValue();
post = new HttpPost(HeaderLocation);
// Проходим по нему
response = httpClient.execute(post);
post.abort();
// Теперь последний редирект на получение токена
HeaderLocation = response.getFirstHeader("location").getValue();
// Проходим по нему
post = new HttpPost(HeaderLocation);
response = httpClient.execute(post);
post.abort();
// Теперь в след редиректе необходимый токен
HeaderLocation = response.getFirstHeader("location").getValue();
// Просто спарсим его сплитами
access_token = HeaderLocation.split("#")[1].split("&")[0].split("=")[1];
https://oauth.vk.com/authorize?client_id=111111111&scope=friends,notify,photos,photos,audio,video,docs,notes,pages,groups,offline&redirect_uri=https://oauth.vk.com/blank.html&display=mobile&v=5.5&response_type=token
&revoke=1
WebView wv = (WebView) this.findViewById(R.id.webView1);
WebSettings webSettings = wv.getSettings();
webSettings.setJavaScriptEnabled(true);
wv.setHorizontalScrollBarEnabled(false);
webSettings.setLayoutAlgorithm(LayoutAlgorithm.SINGLE_COLUMN);
wv.setWebViewClient(new VkWebViewClient());
wv.loadUrl("https://oauth.vk.com/authorize?client_id=111111&scope=friends,notify,photos,photos,audio,video,docs,notes,pages,groups,offline&redirect_uri=https://oauth.vk.com/blank.html&display=mobile&v=5.5&response_type=token&revoke=1");
public class VkWebViewClient extends WebViewClient {
public VkWebViewClient() {
// TODO Auto-generated constructor stub
}
@Override
public void onPageFinished(WebView view, String url)
{
Log.i("VkWebViewClient onPageFinished",url);
if (url.contains("oauth.vk.com/blank.html#")) {
if (url.contains("error")) {
// Error
}
else
{
String ahrore = url.substring(url.indexOf("#")+1);
}
}
}