Back to project page Android_Oauth_Demo.
The source code is released under:
MIT License
If you think the Android project Android_Oauth_Demo 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.example.sdnusdk; import android.annotation.SuppressLint; import android.app.Activity; import android.content.Context; import android.content.Intent; import android.os.Bundle; import android.os.Handler; import android.os.Message; import android.webkit.WebView; import android.webkit.WebViewClient; import android.widget.Toast; import cn.edu.sdnu.i.util.oauth.Oauth; // w w w.ja v a 2 s . c o m import com.example.sdnusdk.R; public class LoginActivity extends Activity{ private WebView show; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); super.setContentView(R.layout.loginactivity); Bundle bundle = this.getIntent().getExtras(); String urlStr = bundle.getString("url"); //???? webview initWebView(urlStr); //????? ???token } private Handler mHandler =new Handler(new Handler.Callback(){ @Override public boolean handleMessage(Message msg){ switch (msg.what) { case Oauth.ERROR: Toast.makeText(LoginActivity.this, "?????,?????!", Toast.LENGTH_SHORT).show(); break; case Oauth.ACC_TOKEN: decodeAccessToken(); default: break; } return false; } }); private void decodeAccessToken( ) { // TODO Auto-generated method stub //???? . //???token??? .??????. String token = Oauth.getToken(); Utils.saveTokenValue(LoginActivity.this, token, Utils.TOKENVALUE, Context.MODE_PRIVATE); Intent intent = new Intent(); intent.setClass(LoginActivity.this, MainActivity.class); startActivity(intent); LoginActivity.this.finish(); } @SuppressLint("SetJavaScriptEnabled") private void initWebView(String urlStr){ // ??????????????WebView?? show = (WebView) findViewById(R.id.show); show.setWebViewClient(new WebViewClient(){ @Override public boolean shouldOverrideUrlLoading(WebView view, String url) { // TODO Auto-generated method stub String subcallbackUrl = "login_custom.jsp?userip=";; if (url.contains(subcallbackUrl)) { view.stopLoading(); view.loadUrl("about:blank"); Toast.makeText(LoginActivity.this,"????,????!", Toast.LENGTH_SHORT).show(); return true; }else if (url.contains("http://fakeurl.com/callback?from=isdnu")){ if(Oauth.setOauthVerifier(url)){ //Request token ?????? Access Token //????????,???????? access token ??. Oauth.startThread(mHandler, null,Oauth.ACC_TOKEN,LoginActivity.this); Toast.makeText(LoginActivity.this, "?????,?????!", Toast.LENGTH_SHORT).show(); } } return false; } @Override public void onPageFinished(WebView view, String url) { // TODO Auto-generated method stub super.onPageFinished(view, url); } }); //??? js show.getSettings().setJavaScriptEnabled(true); show.loadUrl(urlStr); } @Override public void onResume() { super.onResume(); } public void onPause() { super.onPause(); } }