Articles of webview

全屏时,HTML 5video崩溃

我目前正在使用屏幕方向肖像的应用程序,我有HTML 5video需要全屏支持。 我添加到webview一个WebChromeClient,重写了几个方法。 一切都工作正常,当我坚持肖像的方向,但是当我尝试切换方向风景去全屏时,我得到了一个崩溃。 任何线索? 覆盖的方法: public void onShowCustomView(View view, CustomViewCallback callback) { super.onShowCustomView(view, callback); if (mCustomViewContainer != null) { callback.onCustomViewHidden(); return; } if(interfazWeb==null) interfazWeb = (FragTabActivity) getActivity(); if (view instanceof FrameLayout) { mCustomViewContainer = (FrameLayout) view; mCustomViewCallback = callback; interfazWeb.getCustomContentView().setVisibility(View.INVISIBLE); interfazWeb.addContentView(mCustomViewContainer, new FrameLayout.LayoutParams(ViewGroup.LayoutParams.FILL_PARENT, ViewGroup.LayoutParams.FILL_PARENT, Gravity.CENTER)); interfazWeb.setBackDelegate(new BackDelegate(){ public boolean shouldOverrideBackButton() { if(mCustomViewCallback!=null){//first calling onHideCustomView() […]

可访问性:Talkback,WebView和用户的语言环境

我开发了一个包含Webview的应用程序。 我想使我的应用程序完全可访问,所以对于webview元素,我希望TalkBack以完全可访问的方式阅读诸如“标题”,“横幅”,“编辑文本”等html元素。 我已经看到WebView中的TTS过程是通过Chromium AccessibilityInjector.java类的JS注入完成的。 这将这个脚本注入到只有英文信息的页面中。 结果是,当一个设备是另一种语言,TTS读取这些HTML元素英文无论。 现在我不能debugging或扩展铬webclient,所以我怎么能让TTS根据用户的区域设置来阅读我的页面? 编辑:我正在使用jQuery Mobile的方式。

Android:WebView在几页之后停止加载

我有一个webview我正在加载到使用loadDataWithBaseURL自定义HTML: mArticleWebView.loadDataWithBaseURL("http://www.example.com/", htmlString, "text/html", "utf-8", null); 这将工作几个页面,然后事件停止射击在WebView中似乎没有理由在平板电脑上的果冻豆和Web视图将是空白的。 这个这个WebViewCreation代码: private void prepareWebView() { mArticleWebView.setBackgroundColor(getResources().getColor(R.color.white)); mArticleWebView.setScrollBarStyle(WebView.SCROLLBARS_INSIDE_OVERLAY); mArticleWebView.addJavascriptInterface(new ArticleJavaScriptInterface(getActivity()), "Company"); mArticleWebView.setWebChromeClient(new CustomChromeClient()); /* WebViewClient must be set BEFORE calling loadUrl! */ mArticleWebView.setWebViewClient(new WebViewClient() { @Override public void onPageStarted(WebView view, String url, Bitmap favi) { Log.e(TAG, "Signs of life, shock and awe."); super.onPageStarted(view, url, favi); } @Override public void […]

如何select和复制未附加到活动的视图中的文本?

我正在创build一个像这样的“浮动”WebView: public class MyService extends Service { public static WindowManager windowManager; public static LinearLayout mainView; public WebView webView; @Override public void onCreate() { super.onCreate(); windowManager = (WindowManager) getSystemService(WINDOW_SERVICE); LayoutInflater inflater = (LayoutInflater) getSystemService(LAYOUT_INFLATER_SERVICE); // main view mainView = (LinearLayout) inflater.inflate(R.layout.popup, null); WindowManager.LayoutParams mainViewParams = new WindowManager.LayoutParams( LayoutParams.MATCH_PARENT, LayoutParams.MATCH_PARENT, WindowManager.LayoutParams.TYPE_PHONE, WindowManager.LayoutParams.FLAG_WATCH_OUTSIDE_TOUCH, PixelFormat.TRANSLUCENT); windowManager.addView(mainView, mainViewParams); // main […]

打开webview文本select的自定义对话框

我已经在webview中实现了文本select的代码。 它工作得很好没有任何问题。 但是我想打开自定义对话框而不是默认对话框。 下面是我使用它的链接 如何覆盖android webview os 4.1+的默认文本select? 但它不适用于自定义对话框。 find下面的代码 public class CustomWebView extends WebView { private Context context; private ActionMode mActionMode; private ActionMode.Callback mSelectActionModeCallback; private GestureDetector mDetector; public CustomWebView(Context context) { super(context); this.context = context; WebSettings webviewSettings = getSettings(); webviewSettings.setJavaScriptEnabled(true); // add JavaScript interface for copy WebAppInterface webAppInterface = new WebAppInterface(context); addJavascriptInterface(webAppInterface, "JSInterface"); } […]

Android WebView – 从另一个iframe中的一个iframe访问类

我们有一个本地的ios应用程序,它显示一个网页视图与HTML网页和两个iframe。 在这些iframe中,我们显示来自位于应用程序资源中的HTML文件的文章。 在文章里面,经常有javascript脚本同时对两篇文章进行操作。 例如,使文本的一部分变粗体。 要做到这一点,它会列出所有具有特定类的元素并修改其CSS样式。 $(".question").length() 会在iOS上的两个iframe中返回带有.question类的元素的数量,在那里它只会​​从Android上的当前iframe返回元素。 “当前”是指用户与之交互以启动脚本的人。 我们有一个要求也发布一个Android应用程序。 这一切都很好,直到我testing了一篇文章,其中javascript必须在两个iframe上运行。 不幸的是,它只能从一个iframe访问元素。 有什么办法可以让它工作,而不改变附加到文章的javascript的代码? 我没有权威[除了可能是数以千计的文章与大量的自定义JavaScript更新]。 谢谢

WebView的LOAD_NO_CACHE设置仍然保存文件到磁盘?

尽pipe使用了webview.getSettings().setCacheMode(WebSettings.LOAD_NO_CACHE); ,WebView仍然将MB的价值文件保存到caching中。 有没有办法真正禁用caching? 谢谢

如何在WebView中内嵌HTML5video?

我需要在WebView中内联播放html5video。 我发现了一种应该可以工作的技术,但它只是偶尔工作(见问题的结尾)。 当它不起作用时,onShowCustomView不会被调用。 任何人都可以看到一个原因,这是不工作或build议替代? package com.richcollins.VideoView; import java.io.ByteArrayOutputStream; import java.io.InputStream; import android.app.Activity; import android.media.MediaPlayer; import android.os.Bundle; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import android.webkit.WebChromeClient; import android.webkit.WebSettings; import android.webkit.WebView; import android.widget.FrameLayout; import android.widget.VideoView; public class WebViewActivity extends Activity { WebView webView; FrameLayout frameLayout; public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); LayoutInflater inflator = getLayoutInflater(); View inflatedView = […]

Android,Webview,获取表单数据

我想我的Android应用程序使用Webview来显示一个HTML表单。 当用户按下“提交”button时,它需要将名称/值对发送回我的程序。 我该怎么做呢? 我已经看了其他类似的问题,但没有答复,具体如何做到这一点。

Viewpager Webview内存问题

我使用一个viewpager来加载大约50个网页浏览…所有的网页浏览被加载到assests中,每个weview都有一个HTML页面,每个页面访问大约70个图像…当我滑动,我的应用程序崩溃大约30页,可能是因为网页浏览仍然保持其对图像在资料夹中的引用…有没有什么办法可以释放Viewpager在特定时间不使用的网页浏览? awesomePager.setAdapter(new AwesomePagerAdapter(this, webviewdata)); 细节: Android WebView Memory Leak when loading html file from Assets Failed adding to JNI local ref table (has 512 entries) "Thread-375" prio=5 tid=15 RUNNABLE 同时在viewpager上dynamic加载webview logcat的: