/** * */ package com.xzjmyk.pm.activity; import android.app.Activity; import android.content.Intent; import android.net.Uri; import android.os.Bundle; import android.util.Log; import android.view.KeyEvent; import android.webkit.DownloadListener; import android.webkit.WebSettings; import android.webkit.WebView; import android.webkit.WebViewClient; import com.uuzuche.lib_zxing.activity.CodeUtils; import com.xzjmyk.pm.activity.ui.erp.util.CommonUtil; import com.xzjmyk.pm.activity.view.crouton.Crouton; import com.xzjmyk.pm.activity.view.crouton.LifecycleCallback; /** * @author RaoMeng */ public class CaptureResultActivity extends Activity { private WebView mWebView; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_capture_result); initActivity(); initData(); } private void initActivity() { mWebView = (WebView) findViewById(R.id.result_webview); WebSettings webSettings = mWebView.getSettings(); //允许加载JavaScript webSettings.setJavaScriptEnabled(true); //网页自适应屏幕 webSettings.setUseWideViewPort(true); webSettings.setLoadWithOverviewMode(true); webSettings.setDomStorageEnabled(true); webSettings.setCacheMode(WebSettings.LOAD_DEFAULT); mWebView.setWebViewClient(new WebViewClient() { @Override public boolean shouldOverrideUrlLoading(WebView view, String url) { /*view.loadUrl(url); return true;*/ return false; } }); mWebView.setDownloadListener(new DownloadListener() { @Override public void onDownloadStart(String url, String userAgent, String contentDisposition, String mimetype, long contentLength) { Uri uri = Uri.parse(url); Intent intent = new Intent(Intent.ACTION_VIEW,uri); startActivity(intent); // finish(); } }); } private void initData() { Intent intent = getIntent(); if (null != intent) { Bundle bundle = intent.getExtras(); if (bundle == null){ return; } if (bundle.getInt(CodeUtils.RESULT_TYPE) == CodeUtils.RESULT_SUCCESS){ String result = bundle.getString(CodeUtils.RESULT_STRING); Log.d("scanurl",result); if (CommonUtil.isWebsite(result)){ mWebView.loadUrl(result); // finish(); }else { Crouton crouton = Crouton.makeText(CaptureResultActivity.this, "您扫描的二维码不是网址", 0xffff4444, 1500); crouton.show(); crouton.setLifecycleCallback(new LifecycleCallback() { @Override public void onDisplayed() { } @Override public void onRemoved() { finish(); } }); } } } } @Override public boolean onKeyDown(int keyCode, KeyEvent event) { if (keyCode == KeyEvent.KEYCODE_BACK){ if (mWebView.canGoBack()){ mWebView.goBack(); return true; } } return super.onKeyDown(keyCode, event); } }