我一直在Android webview上尝试SSL会话重用.我们注意到,如果连续请求在~5秒内发生,则会重新使用ssl会话.在服务器(nginx)中我们设置了ssl_session_timeout 10m 意义,10分钟,保持活动是30秒.
好像Android webview控件在5秒后销毁session-id.
我们如何重用ssl会话至少30秒?
HTML文件中有两种类型的链接:
(1) A normal link like http://www.bbb.com/q?type=normal
(2) A short link like /q?type=short.
Run Code Online (Sandbox Code Playgroud)
对于第一种,只需加载网址.对于第二种,我应该在加载URL之前使用固定地址(如http://www.abc.com).
我试图通过覆盖WebViewClient中的shouldOverrideUrlLoading()函数来做到这一点.但是,不会为第二种类型的链接调用此函数.我尝试将" http://www.abc.com " 添加到HTML文件中的第二种类型的链接.然后当我点击第二种链接时,会调用该函数.
我认为发生的事情是WebView将首先检查链接是否是有效的URL.只有它有效才会调用该函数.我对吗?我怎么解决这个问题?提前致谢.
contentWebView = new WebView(context);
webViewClient = new WebViewClient() {
@Override
public void onPageStarted(WebView view, String url, Bitmap favicon) {
super.onPageStarted(view, url, favicon);
}
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
// String not in Logger.
Log.d(TAG, "Here!");
Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(url));
context.startActivity(intent);
return true;
}
@Override
public void onPageFinished(WebView view, String url) {
super.onPageFinished(view, url);
if …Run Code Online (Sandbox Code Playgroud) 我创建了一个Web视图应用程序,显示的页面具有market://链接,但单击它们后,我得到404屏幕以及不支持该协议的错误.我试过查看文档,但无法找到与此相关的任何内容.任何帮助深表感谢.
我已经看到这个问题浮现在互联网上,但我还没有找到一个有效的解决方案.基本上,我想加载我的应用程序并按下按钮; 然后按钮操作将在已经加载到webview中的网站中填写用户名和密码(或等待onPageFinished).最后,将激活登录页面上的提交按钮.
根据我的理解,这可以通过使用loadUrl(javascript)进行java注入来完成,但我不知道java命令将填充哪些字段.iOS的问题也是一样,但命令略有不同.
是否有可能在webivew中使用javascript做我要求的事情,或者我是否必须在没有像这样或这样的webview的情况下做一个http-post ?
非常感谢您提供的任何帮助!
目标:
覆盖WebView发出的所有请求并自行发出请求(最终设置代理).
码:
@Override
public WebResourceResponse shouldInterceptRequest(WebView view, String url) {
if (url == null || url.trim().equals(""))
return null;
final DefaultHttpClient httpClient = new DefaultHttpClient();
httpClient.getConnectionManager().closeExpiredConnections();
final HttpUriRequest httpRequest = new HttpGet(url);
try {
final HttpResponse response = httpClient.execute(httpRequest);
final Header[] headers = response.getHeaders(CONTENT_TYPE);
String mimeType = "";
String encoding = "";
if (headers != null && headers.length > 0) {
final String type = headers[0].getValue();
final int semicolonIndex = type.indexOf(';');
if (semicolonIndex != -1) {
mimeType = type.substring(0, semicolonIndex).trim(); …Run Code Online (Sandbox Code Playgroud) 我在我的html下面加载 webView
现在我想做的是填充html来自我的java类变量的文本框,然后自动点击提交.
但我不知道该怎么做.
任何thougths将不胜感激.
我有这个HTML:
<p>
<a href="http://en.wikipedia.org/wiki/Sauropelta">sawr-o-pel-te</a> meaning 'lizard shield'
</p>
<p>
April 7th, 2015
</p>
<p>
4/7/2015
</p>
<p>
April 7th
</p>
<p>
Next Monday 6th<br>
</p>
<p>
202 E South St<br>
Orlando, FL 32801
</p>
<h3>Quick Facts</h3>
<ul>
<li>One of the most well-understood nodosaurids<span></span></li>
<li>The earliest known genus of nodosaurid<span></span></li>
<li>Measured about 5 meters (16.5 ft) long<span></span></li>
<li>The tail made up nearly half of its body length</li>
</ul>
<span></span>
Run Code Online (Sandbox Code Playgroud)
而且我想知道是否可以自动超链接日期,以便当用户按下它们时您可以将它们添加到用户(手机的)日历中?这应该如何运作的一个很好的例子是Gmail.如果有日期或单词(明天,本周五等),则应自动链接,以便将日期添加到日历中.
更新:
有没有人知道是否有前任.我可以添加到应用程序的javascript将为我做这个工作?
我们尝试通过谷歌云打印打印webview内容,但无论我们做什么,结果打印输出都会增加一些余量.
有没有办法删除这个保证金?我们尝试了:
<body style="margin: 0; padding: 0">
Run Code Online (Sandbox Code Playgroud)
然后
<meta name="viewport" content="initial-scale=1, maximum-scale=1, user-scalable=no, width=device-width">
Run Code Online (Sandbox Code Playgroud)
然后
mWebView.setScrollBarStyle(View.SCROLLBARS_INSIDE_OVERLAY);
Run Code Online (Sandbox Code Playgroud)
没人工作......
我有一个加载Webview的Subview,我想在我的webView加载网站时获取webView的url,你能告诉我如何获取webView的url.谢谢.
我看到很多类似于下面崩溃的崩溃报告,我对如何诊断问题感到茫然.
Google Developer Console中的崩溃标题:
/data/app/com.google.android.webview-1/lib/arm/libwebviewchromium.so中的原生崩溃/data/app/com.google.android.webview-1/lib/arm/libwebviewchromium.so,26743失败:不允许操作
崩溃细节:
Build fingerprint:
'samsung/trltetmo/trltetmo:5.1.1/LMY47X/N910TUVU2DOK2:user/release-keys'
Revision: '12' ABI: 'arm' pid: 26743, tid: 29439, name:
DedicatedWorker >>> package-removed <<< signal
4 (SIGILL), code 1 (ILL_ILLOPC), fault addr 0xa3f94e26
r0 00000053 r1 64499bb1 r2 64499bb1 r3 00000001
r4 66a99000 r5 a4b2fb94 r6 a4b53e60 r7 5e9fe8dc
r8 66a99010 r9 5e9fef24 sl 5e9ff128 fp a4b53e60
ip b6d4d929 sp 5e9fe818 lr a3cfe9d9 pc a3f94e26 cpsr 68030030
backtrace:
#00 pc 00db3e26 /data/app/com.google.android.webview-1/lib/arm/libwebviewchromium.so
ptrace attach to 26743 failed: Operation not permitted
ptrace attach …Run Code Online (Sandbox Code Playgroud) android ×10
android-webview ×10
html ×3
webview ×3
crash ×1
custom-url ×1
http-post ×1
java ×1
javascript ×1
ssl ×1
uri-scheme ×1