2015-03-02 92 views
0

我想在webview的应用程序中显示https://plus.google.com/myprofilepage(忽略myprofilepage部分,我用它代替了我的实际配置文件页)。问题是应用程序没有显示任何东西,早些时候我尝试过,只是http://www.google.comhttps://www.google.co.in,它的工作。在webview中加载https页

没有创建日志,所以无法获取它们。我确实有互联网连接,AndroidManifest.xml也有权限INTERNET。

我想要在WebView中显示谷歌加页面是我的基本要求,我想我缺少加载谷歌加需要的东西。有人可以帮忙吗?

targetsdkversion为21

下面是我的代码:

@Override 
    public View onCreateView(LayoutInflater inflater, ViewGroup container, 
          Bundle savedInstanceState) { 
     View v = inflater.inflate(R.layout.fragment_about_developer, container, false); 
     //String url = getActivity().getResources().getString(R.string.about_page); 
     String url="https://plus.google.com"; 
     WebView webView = (WebView) v.findViewById(R.id.devwebView); 
     webView.setWebViewClient(new WebviewHandler()); 
     webView.setInitialScale(1); 
     webView.getSettings().setLoadWithOverviewMode(true); 
     webView.getSettings().setUseWideViewPort(true); 
     webView.setScrollBarStyle(WebView.SCROLLBARS_OUTSIDE_OVERLAY); 
     webView.setScrollbarFadingEnabled(false); 
     webView.loadUrl(url); 
     return v; 
    } 

    private class WebviewHandler extends WebViewClient { 
     @Override 
     public boolean shouldOverrideUrlLoading(WebView view, String url) { 
      view.loadUrl(url); 
      return true; 
     } 
     @Override 
     public void onReceivedSslError(final WebView view, final SslErrorHandler handler, SslError error) { 
      handler.proceed(); 
     } 
    } 

回答

1

Google+的使用了大量的JavaScript,与webView.getSettings().setJavaScriptEnabled(true);启用它。为我工作

+0

我以前尝试过...我能看到www.google.com,但plus.google.com不加工。 – Psypher 2015-03-04 19:49:59

0

+1 Lamorak说的。启用JavaScript是必须的。这是代码的最低限度所需(除了具有INTERNET许可):

WebView webView = (WebView)findViewById(R.id.webView); 
// This is to avoid "Open with..." dialog for the G+ page. 
webView.setWebViewClient(new WebViewClient()); 
WebSettings settings = webView.getSettings(); 
// Enable JavaScript. 
settings.setJavaScriptEnabled(true); 
// The two lines below are to enable interpreting <meta viewport> tag. 
settings.setUseWideViewPort(true); 
settings.setLoadWithOverviewMode(true); 
webView.loadUrl("http://plus.google.com/..."); 
+0

我曾尝试过......我可以看到www.google.com,但plus.google.com无法正常工作。 – Psypher 2015-03-04 19:50:03

+0

@Ranjith:这很有趣。你可以尝试调试这个。设置您的应用程序,使其成功加载“www.google.com”,然后按照以下步骤操作:https://developer.chrome.com/devtools/docs/remote-debugging#debugging-webviews,并成功完成将DevTools附加到您的应用程序中,打开“控制台”选项卡,键入'window.location.href ='http://plus.google.com/...'(您尝试使用的URL),打开“网络” DevTools中的选项卡,并检查您的网络请求发生了什么。 – 2015-03-05 11:23:23