android+支付宝+网页,android 支付宝之网页支付和快捷支付

public classAlipayWebActivity extends Activity {privateWebView mWebView;privateProgressDialog mProgressDialog;private static final String TAG = "AlipayWebActivity";protected static final int PAY_SUCCESS = 20;protected static final int LOAD_FINISH_CODE = 40;private static final int DEFAULT_CODE = 50;privateImageView quitImageView;public voidonCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.web);

FactoryUtil.getInstance().addActivity(this);

quitImageView=(ImageView) findViewById(R.id.iv_quit);

mWebView=(WebView) findViewById(R.id.webview);

mWebView.setBackgroundColor(0);

initial();

quitImageView.setOnClickListener(newMyOnClickListener());

}

@SuppressLint({"SetJavaScriptEnabled", "HandlerLeak"})

@TargetApi(Build.VERSION_CODES.HONEYCOMB)private voidinitial() {

String url= getIntent().getStringExtra("url");

LogUtil.i(TAG, url);

WebSettings webSettings=mWebView.getSettings();

mWebView.requestFocus();

webSettings.setJavaScriptEnabled(true);

mWebView.setFocusable(true);

webSettings.setBuiltInZoomControls(true);

mWebView.setScrollBarStyle(0);if (MobileUtil.getMobileVersion()>11) {

mWebView.setLayerType(View.LAYER_TYPE_SOFTWARE,null);

}

mWebView.setWebChromeClient(newWebChromeClient() {public void onProgressChanged(WebView view, intnewProgress) {

LogUtil.i(TAG,"newProgress:" +newProgress);if (newProgress == 100 && mProgressDialog!=null) {

mProgressDialog.dismiss();

}

super.onProgressChanged(view, newProgress);

}

});

mWebView.setWebViewClient(newWebViewClient() {publicboolean shouldOverrideUrlLoading(WebView view, String url) {

LogUtil.i(TAG,"URL :" +url);

LogUtil.i(TAG,"URL :" + url.contains("&cmd=success&"));

loadUrl(view, url);return true;//停止在当前界面

}public voidonPageFinished(WebView view, String url) {

LogUtil.i(TAG,"onPageFinished" +url);//trade_status : TRADE_FINISHED,成功之后处理super.onPageFinished(view, url);

}public voidonPageStarted(WebView view, String url, Bitmap favicon) {

super.onPageStarted(view, url, favicon);

LogUtil.i(TAG,"onPageStarted" +url);

}

});

loadUrl(mWebView, url);

}

@SuppressLint("HandlerLeak")private Handler mUihandler = newHandler() {public voidhandleMessage(Message msg) {switch(msg.what) {casePAY_SUCCESS:

clearCache();

FactoryUtil.getInstance().exit();break;caseLOAD_FINISH_CODE:if (mProgressDialog != null &&mProgressDialog.isShowing()) {

mProgressDialog.dismiss();

}break;caseDEFAULT_CODE:

showProgressDialog(AlipayWebActivity.this,

R.string.dialog_loading);

}

super.handleMessage(msg);

}

};private voidloadUrl(final WebView webView, final String url) {

mUihandler.sendEmptyMessage(DEFAULT_CODE);

webView.loadUrl(url);

}public boolean onKeyDown(int keyCode, KeyEvent event) {

LogUtil.i(TAG,"can goback:" +mWebView.canGoBack());if (keyCode == KeyEvent.KEYCODE_BACK &&mWebView.canGoBack()) {

mWebView.goBack();return true;

}else if (keyCode ==KeyEvent.KEYCODE_BACK) {

onBackPressed();return true;

}return super.onKeyDown(keyCode, event);

}public void showProgressDialog(Context context, intmessage) {if (mProgressDialog == null) {

mProgressDialog= newProgressDialog(context);

mProgressDialog.setMessage(context.getText(message));

mProgressDialog.show();

}

}private voidclearCache() {

mWebView.clearCache(true);

mWebView.loadDataWithBaseURL(null, "", "text/html", "utf-8", null);

finish();

}private classMyOnClickListener implements OnClickListener{

@Overridepublic voidonClick(View v) {int id =v.getId();if (id==R.id.iv_quit) {

finish();

}

}

}

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值