Android webview::拒绝显示文档,因为X-Frame-Options禁止显示
我正在尝试在webview中加载twitter小部件文件。 我的webview加载正确,但 当我试图打开webview内部的链接(twitter小部件文件内部的链接)时,我得到了上面提到的错误&整个屏幕变成空白。下面是我正在使用的代码Android webview::拒绝显示文档,因为X-Frame-Options禁止显示,android,Android,我正在尝试在webview中加载twitter小部件文件。 我的webview加载正确,但 当我试图打开webview内部的链接(twitter小部件文件内部的链接)时,我得到了上面提到的错误&整个屏幕变成空白。下面是我正在使用的代码 @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layo
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_view_all);
String url = getIntent().getExtras().getString("url");
webProgress = (ProgressBar) mCustomView.findViewById(R.id.webProgress);
mWebView = (WebView) findViewById(R.id.web_view);
noDataConnection = (LinearLayout) findViewById(R.id.layout_no_network);
detector = new ConnectionDetector(this);
mWebView.getSettings().setDomStorageEnabled(true);
mWebView.setWebViewClient(new WebViewClient() {
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
// Log.e(TAG, "shouldOverrideUrlLoading : " + url);
if (!detector.isConnectingToInternet()) {
noDataConnection.setVisibility(View.VISIBLE);
webProgress.setVisibility(View.GONE);
return true;
} else {
noDataConnection.setVisibility(View.GONE);
webProgress.setVisibility(View.VISIBLE);
return false;
}
}
@Override
public void onReceivedError(WebView view, int errorCode, String description, String failingUrl) {
super.onReceivedError(view, errorCode, description, failingUrl);
noDataConnection.setVisibility(View.VISIBLE);
webProgress.setVisibility(View.GONE);
}
});
mWebView.setWebChromeClient(new WebChromeClient() {
@Override
public void onProgressChanged(WebView view, int newProgress) {
super.onProgressChanged(view, newProgress);
if (newProgress >= 100) {
Log.e(TAG, "onProgressChanged : 100%");
webProgress.setVisibility(View.GONE);
}
}
});
mWebView.getSettings().setJavaScriptEnabled(true);
mWebView.getSettings().setBuiltInZoomControls(true);
mWebView.setScrollBarStyle(View.SCROLLBARS_OUTSIDE_OVERLAY);
if (!detector.isConnectingToInternet()) {
noDataConnection.setVisibility(View.VISIBLE);
webProgress.setVisibility(View.GONE);
} else {
noDataConnection.setVisibility(View.GONE);
webProgress.setVisibility(View.VISIBLE);
mWebView.loadUrl(url);
}
}
非常感谢您的帮助。我终于通过以下线程响应找到了解决方案:
正是由于iFrame,推特点击没有被很好地检测到。嘿,你的问题有解决方案吗?你在哪个网站上遇到了问题?我面临着同样的问题。我显示嵌入的tweet。在Nexus7和Nexus10(Android 4.4.3)上,会调用shouldOverrideUrl,并且“follow”按钮会正确发送意图,但在Galaxy note(4.1.2)、Galaxy Neuxs(4.3)、Galaxy S4(4.4.2)或Htc one(4.4.2)中,推文变为空白(未检测到url重定向)。有线索吗?