Articles of webview

如何在android webview中加载https url而不使用ssl

我已经标记Playstore上的一个问题和谷歌发送邮件我的应用程序是不安全的,因为使用SSL。 目前在我的应用程序中,我有一个webview ,它是负载链接,它包含https url。 在网页设置我正在这样做: web.setWebViewClient(new SSLTolerentWebViewClient()); 忽略ssl证书我使用下面的代码,但由于忽略证书playstore显示我的应用程序是不安全的 private class SSLTolerentWebViewClient extends WebViewClient { public void onReceivedSslError(WebView view, SslErrorHandler handler, SslError error) { handler.proceed(); // Ignore SSL certificate errors } } 任何人都可以build议我如何做到这一点,所以我的WebView可以处理https url和Playstore不会将我的应用程序标记为不安全?

在android中的webView中打开Url

如何在webView中打开这个链接 。 这是在浏览器上运行,但它不能运行在webView的android。 请给解决办法

ANDROID:在Webview和httpclient之间分享会话

我实际上在我的WebView中logging会话。 但我也使用httpclient发送并从networking获取数据。 我在互联网上看到,无法获取WebView的内容,所以我需要使用我的httpclient从web服务获取数据。 问题是这个web服务使用会话…我的会话是在我的WebView,所以httpclient没有它,我不能访问web服务的内容。 我看到很多关于这个问题的post,但我不明白这个解决scheme。 这是我在onPageStarted上做的: CookieManager mgr = CookieManager.getInstance(); Log.i( "URL", url ); Log.i("Cookie",mgr.getCookie("mywebsite.com")); String cookie_string = mgr.getCookie("mywebsite.com"); if(cookie_string.length() > 1) { Data.instance().getPref().edit().putString("cookie",cookie_string).commit(); } 我看到我有这样的事情,所以我希望那些也包括会议:(我删除号码) __utma=……(number)……; __utmc=number; __utmz=number.utmcsr=(direct)|utmccn=(direct)|utmcmd=(none); wt3_eid=%number%number; wt3_sid=%number 然后我不知道该怎么做才能在我的httpclient中设置这个cookie。 我尝试了,没有成功: HttpClient client = new DefaultHttpClient(); BasicCookieStore cookieStore = new BasicCookieStore(); String login_cookie_string = Data.instance().getPref().getString("cookie", ""); String[] cookie_parts = null; if(login_cookie_string.length()> 0) { […]

如何拦截WebView(Android)中的URL加载?

我有一个WebView,我加载一个自定义链接的页面(如应用程序:/ /行动)。 我在清单文件中注册了urlscheme,当我点击链接时,我的Activity的onResume()方法被调用了正确的数据,并且工作正常。 我的问题是,WebView仍然尝试加载链接,我的WebView结束显示“网页不可用”消息。 我不要那个。 我怎样才能防止WebView加载url? 这是我的代码: WebView banner = … banner.setWebViewClient(new WebViewClient() { @Override public void onLoadResource(WebView view, String url) { if (url.startsWith("app://")) { Intent i = new Intent(Intent.ACTION_VIEW, Uri.parse(url), getContext(), Main.class); //startActivity(i); } } } banner.loadUrl("url_to_the_banner");

如何在Android中使用Theme.Dialog风格显示WebView

我在清单中声明了一个WebView活动,如下所示: <activity android:name=".MyWebView" android:label="@string/app_name" android:configChanges="orientation|keyboardHidden" android:theme="@android:style/Theme.Dialog"> </activity> WebView看起来像这样: <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent" > <WebView android:id="@+id/webview" android:layout_width="fill_parent" android:layout_height="fill_parent" /> </LinearLayout> 当我在主要活动中启动此活动时,只有包含应用程序名称的对话框的标题才可见,但不是WebView。 如果我将一个TextView添加到LinearLayout中,它也会显示出来,但仍然缺lessWebView。 如果我不在清单中应用android:theme="@android:style/Theme.Dialog" ,则显示WebView。 为什么是这样的,我怎样才能在对话框中显示WebView?

Android Webview:有没有办法知道以前的url是什么?

有没有办法访问历史logging,以便我知道当用户点击后退button(调用WebView.goBack())时用户访问的URL?

android – 如何防止webview加载时,没有互联网连接

我有一个Android应用程序,它有一个Web视图。 当没有互联网连接时,webview将显示不可用的页面。 我想尽可能使它看起来像一个应用程序,所以我不想显示此页面。 我发现一些有用的信息在网上教你如何隐藏或加载其他东西来掩盖它,但我真正想要的是留在当前页面和一个小popup对话框说没有连接。 基本上,当用户点击webview内的任何东西时,首先检查连接。 如果没有连接,留在原来的位置,popup一个对话框。 谢谢您的帮助!! 编辑: 就像我说的,我已经知道如何检查在线样本的互联网连接。 我的问题是我不知道如何停止加载下一页。 要清楚的是,当用户尝试去下一页,检查互联网连接。 如果没有连接,页面将停留在原来的位置,不会进入下一页。 我希望用户能够看到他们上次加载的页面,并在网页内容仍然存在时得到通知。 谢谢!

如何在对话框中设置边距

我在我的Andorid应用程序中使用了Dialog作为展示广告。但是我必须从buttom显示大约50dp的Dialog ,所以我认为我们应该设置Dialog Gravity buttom并设置它的button边距50dp。但是我无法在Dialog使用边距所以请build议我如何解决这个问题。 XML: <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/popup_element" android:layout_width="wrap_content" android:layout_height="wrap_content" android:background="@drawable/dialogback" android:orientation="vertical" > <WebView android:id="@+id/webView" android:layout_width="wrap_content" android:layout_height="wrap_content" /> </LinearLayout> Java的: final Dialog dialog = new Dialog(this); dialog.requestWindowFeature(Window.FEATURE_NO_TITLE); dialog.getWindow().setBackgroundDrawable(new ColorDrawable(0)); LayoutInflater inflator = (LayoutInflater) getApplicationContext() .getSystemService(Context.LAYOUT_INFLATER_SERVICE); View view = inflator.inflate(R.layout.ad, null, false); dialog.setContentView(view); dialog.getWindow().setGravity(Gravity.BOTTOM); dialog.setCancelable(true); WebView webView = (WebView) dialog.findViewById(R.id.webView); webView.loadUrl(""); webView.setWebViewClient(new MyWebViewClient()); […]

有没有办法在Android中拥有WebView自动链接URL和电话号码?

如果一个页面上有一个URL或一个电话号码,而不是一个链接是否有任何方法让WebView识别它,并自动把它变成一个链接,你可以用TextView ? 使用TextView您只需将android:autoLink设置为所需的设置: <TextView android:autoLink="web|phone" … /> 但是我找不到任何WebView等价物。

在WebViewCoreThread的后台使用30%的WebView

我有一个WebView的应用程序。 当Activity暂停(onPause)时,我调用合适的webview.onPause和webview.stopTimers,它们与Activity.onResume方法中的webview.onResume和webview.resumeTimers平衡。 现在,当我在webview中加载www.google.com,然后将应用程序置于后台时,它仍将占用30%的CPU! 这太多了。 我执行了方法分析,看到WebViewCoreThread每隔100ms做一次MessageQueue.nativePollOnce – > WebViewCore.nativeSetScrollOffset,这导致重绘webview(在bakground中)(WebViewCore.nativeDrawContent)。 这是WebView的一般问题还是我的应用程序中的问题?