@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
public void onClick(View v) {
mScannerView = new ZXingScannerView(this);
setContentView(mScannerView);
mScannerView.setResultHandler(this);
mScannerView.startCamera();
}
@Override
protected void onPause() {
super.onPause();
mScannerView.stopCamera();
}
@Override
public void handleResult(final Result result) {
//Do anything with result here :D
Log.w("handleResult", result.getText());
AlertDialog.Builder builder = new AlertDialog.Builder(this);
builder.setTitle("Scan result");
builder.setMessage(result.getText());
AlertDialog alertDialog = builder.create();
alertDialog.show();
Intent browserIntent = new Intent(Intent.ACTION_VIEW, Uri.parse(result.getText().toString()));
startActivity(browserIntent);
mScannerView.resumeCameraPreview(this);
}
}
我想在扫描完成后直接打开URL,然后重新打开相机。有人可以帮帮我吗?
答案 0 :(得分:0)
尝试创建自己的活动来处理打开网址的请求。
当我开始学习android及其意图时,我发现它非常令人困惑。但是Manifest中的BROWSABLE类别可以做到以下几点。
浏览器可以安全地调用目标活动,以显示链接引用的数据 - 例如,图像或电子邮件。
详细了解:http://developer.android.com/guide/components/intents-filters.html
另外两个答案打开标准Web浏览器并转到指定的地址。如果您想要自定义浏览器,请像第二个活动一样创建Web视图:
答案 1 :(得分:0)
使用webview加载以下网址:
webView= (WebView) findViewById(R.id.webview);
webView.setWebChromeClient(new WebChromeClient());
webView.setWebViewClient(new WebViewClient());