0

我已经实现了Android白日梦服务,其中我从断言中播放视频, 我已经把按钮放在那里,onclick监听器我想打开带有链接的webview ,每一个事情发展顺利,但是我不能够处理的WebView,当我点击这个消息出现andorid白日梦服务webview(上下文需要flag_activity_new_task标志)

Unfortunatley应用程序已经停止

按钮,出现在日志中的错误消息是

AndroidRuntime(827):致命例外: android.util.AndroidRuntimeException:从活动con文本外部调用startActivity()需要FLAG_ACTIVITY_NEW_TASK标志。这真的是你想要的吗?

我创建的XML文件中的WebView

我调用web视图代码:

final WebView webView = (WebView)this.findViewById(R.id.webView1); 

    button.setOnClickListener(new View.OnClickListener() { 
     public void onClick(View v) { 
      // Perform action on click 
      vv.stopPlayback(); 
      vv.setVisibility(View.GONE);//for media player 

      webView.setVisibility(View.VISIBLE); 
      webView.loadUrl("http://www.google.com"); 
     } 
    }); 

回答

0

很多搜​​索我在这里找到我的问题的答案之后是链接帮助我最

link

基本上我只是把这个在我的Android dreamservice类代码

private class LinkLauncher extends WebViewClient { 
    @Override 
    public boolean shouldOverrideUrlLoading(WebView view, String url) { 
     Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(url)); 
     intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); 
     startActivity(intent); 
     finish(); 
     return true; 
    } 

,并使用web视图如下

  WebView webview = (WebView) findViewById(R.id.webView1); 
      webview.setVisibility(View.VISIBLE); 
      webview.setWebViewClient(new LinkLauncher()); 

      WebSettings webSettings = webview.getSettings(); 
      webSettings.setJavaScriptEnabled(true); 

      webview.loadUrl("http://www.google.com"); 

我写的答案,可以帮助其他人。 谢谢

+0

你甚至不需要实现自定义WebViewClient。 只需在WebView上设置一个空的WebViewClient就可以解决问题(是的,这是令人惊讶的:))。 – Lizozom

相关问题