2017-02-16 144 views
1
@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

尝试和创建你自己的活动来处理请求在您的WebView中打开URL。 – MKJParekh

+1

“直接打开网址”是什么意思?你想展示网站,还是想获取一些数据? – Malik

+0

“open”是什么意思?您是否试图将URL的内容直观地呈现给您的应用的用户?或者你是否试图从这个网址下载数据以便在你的应用中使用? –

回答

0

尝试创建自己的活动来处理打开URL的请求。

当我开始学习android及其意图时,我发现它很混乱。但清单中的类别BROWSABLE执行以下操作。

浏览器可以安全地调用目标活动以显示链接引用的数据 - 例如图像或电子邮件。

了解更多关于:http://developer.android.com/guide/components/intents-filters.html

两个其他答案打开标准网页浏览器,并转到指定的地址。如果你想定制的浏览器进行第二活动像这样的例子Web视图:

http://www.mkyong.com/android/android-webview-example/

0

使用的WebView加载网址,如下所示:

webView= (WebView) findViewById(R.id.webview); 
    webView.setWebChromeClient(new WebChromeClient()); 
    webView.setWebViewClient(new WebViewClient()); 
相关问题