Back to project page Android-VKontakte-SDK.
The source code is released under:
MIT License
If you think the Android project Android-VKontakte-SDK listed in this page is inappropriate, such as containing malicious code/tools or violating the copyright, please email info at java2s dot com, thanks.
package com.perm.kate.api.sample; /*w w w . j a v a2 s . co m*/ import com.perm.kate.api.Auth; import android.app.Activity; import android.content.Intent; import android.graphics.Bitmap; import android.os.Bundle; import android.util.Log; import android.webkit.CookieManager; import android.webkit.CookieSyncManager; import android.webkit.WebView; import android.webkit.WebViewClient; import com.perm.kate.api.sample.R; public class LoginActivity extends Activity { private static final String TAG = "Kate.LoginActivity"; WebView webview; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.login); webview = (WebView) findViewById(R.id.vkontakteview); webview.getSettings().setJavaScriptEnabled(true); webview.clearCache(true); //????? ???????? ???????????? ?? ????????? ???????? ????????? webview.setWebViewClient(new VkontakteWebViewClient()); //otherwise CookieManager will fall with java.lang.IllegalStateException: CookieSyncManager::createInstance() needs to be called before CookieSyncManager::getInstance() CookieSyncManager.createInstance(this); CookieManager cookieManager = CookieManager.getInstance(); cookieManager.removeAllCookie(); String url=Auth.getUrl(Constants.API_ID, Auth.getSettings()); webview.loadUrl(url); } class VkontakteWebViewClient extends WebViewClient { @Override public void onPageStarted(WebView view, String url, Bitmap favicon) { super.onPageStarted(view, url, favicon); parseUrl(url); } } private void parseUrl(String url) { try { if(url==null) return; Log.i(TAG, "url="+url); if(url.startsWith(Auth.redirect_url)) { if(!url.contains("error=")){ String[] auth=Auth.parseRedirectUrl(url); Intent intent=new Intent(); intent.putExtra("token", auth[0]); intent.putExtra("user_id", Long.parseLong(auth[1])); setResult(Activity.RESULT_OK, intent); } finish(); } } catch (Exception e) { e.printStackTrace(); } } }