Articles of webview

如何让webview使用HTML5缓存清单?

在Android设备(包括4.4.2)上,默认浏览器和Chrome支持HTML5缓存清单。 但是,在这些相同的设备上,WebView组件似乎不支持HTML5缓存清单。 有谁知道如何让WebView组件支持HTML5清单?

在webview中安装网页内容(Android)

简单的问题。 我正在尝试拉伸webview的内容,以便可以看到整个网页。 即没有滚动。 我查看了文档,但无法find缩放控件和setinitialscale之外的任何方法。 在这种情况下,setinitialscale的问题在于它对不同站点的工作方式不同。 示例:1:维基百科将按预期加载,缩放范围足够远。 2:谷歌只会显示页面的中心。 下面是我的代码片段 test1 = (WebView) findViewById(R.id.webview_test_1); test2 = (WebView) findViewById(R.id.webview_test_2); test3 = (WebView) findViewById(R.id.webview_test_3); test1.getSettings().setJavaScriptEnabled(true); test2.getSettings().setJavaScriptEnabled(true); test3.getSettings().setJavaScriptEnabled(true); test1.setInitialScale(12); test2.setInitialScale(12); test3.setInitialScale(12); test1.loadUrl(“http://developer.android.com/resources/tutorials/views/hello-tablelayout.html”); test2.loadUrl(“http://www.wikipedia.org/”); test3.loadUrl(“http://www.google.com”); test1.getSettings().setDefaultZoom(ZoomDensity.FAR); 这似乎是我想要做的事情的替代方案,但是我无法让它变得足够远。

如何确定何时Android WebView完全加载?

我想知道如何确定何时完成 WebView加载。 让我完全定义。 所有重定向都已发生 页面明显显示,尚未加载任何内容 这个问题的答案很糟糕: WebViewClient.onPageFinished() – 如果有重定向加载页面,则会多次触发。 它也会在页面显示之前触发。 PictureListener.onNewPicture() – 每次屏幕更改时都会触发,每次重定向都会触发AFAICT。 我怎么知道哪个射击是最后一个? WebChromeClient.onProgressChanged() – 与onPageFinished相同的问题。 (在David建议以下解决方案后添加) Thread.sleep(5000) – 应该是显而易见的,为什么这是不可接受的。 当然,上述工作的巧妙组合将是完美的。 为什么我想知道你问这个? 因为我想在webview 完全加载后一次注入一些javascript。

用户按下后Android WebView不会停止

我正在WebView中播放YouTubevideo。 我可以播放它,但是当这个人离开屏幕时,我无法阻止播放音频。 我在onDestroy和onPause中尝试了各种各样的东西,或完全取出它们,但它们似乎没有什么区别。 有人知道为什么音频会继续播放并且即使在关闭应用并且用户打开其他应用后也不会停止播放? 这是我全class的代码: import com.flurry.android.FlurryAgent; import utils.SendEmail; import android.app.Activity; import android.app.AlertDialog; import android.content.Context; import android.content.DialogInterface; import android.content.Intent; import android.content.SharedPreferences; import android.os.Bundle; import android.preference.PreferenceManager; import android.view.KeyEvent; import android.view.View; import android.webkit.WebChromeClient; import android.webkit.WebSettings; import android.webkit.WebView; import android.webkit.WebViewClient; import android.webkit.WebSettings.PluginState; import android.widget.Button; public class YoutubeActivity extends Activity { WebView webview = null; @Override public void onCreate(Bundle […]

在Android应用程序的webview中加载URL时启动屏幕

我有一个应用程序,它有2个活动,第一个启动第二个将URL加载到webview中。 它工作正常,但是当url加载时,webview显示为空…然后我想制作一个启animation面或类似的东西,在url加载时显示它,我在新的活动中这样做,但我不知道我知道如果在加载url时我可以做什么来关闭第三项活动…请有人帮助我吗? 这是我的代码……谢谢! public class Visor extends Activity { WebView mWebView; int Result; @Override public void onCreate (Bundle savedInstanceState){ super.onCreate(savedInstanceState); setContentView(R.layout.visor); Bundle extras=getIntent().getExtras(); String s= extras.getString(“url”); mWebView = (WebView) findViewById(R.id.webview); mWebView.getSettings().setJavaScriptEnabled(true); mWebView.getSettings().setPluginsEnabled(true); mWebView.getSettings().setAllowFileAccess(true); mWebView.loadUrl(s); mWebView.setWebViewClient(new VisorClient()); mWebView.getSettings().setBuiltInZoomControls(true); } private class VisorClient extends WebViewClient { @Override public void onPageStarted(WebView view, String url, Bitmap favicon) { lanzarIntro(); […]

Make Espresso等待WebView完成加载

有没有一种可靠的方法让Espresso等待WebViews完成加载? 我尝试过这里概述的方法,但发现它不可靠。 它还有其他缺点: 它依赖于替换WebView的WebChromeClient。 由于WebViewrt由于某种原因没有getWebChromeClient()方法,因此无法包装任何现有的WebChromeClient。 它需要一个特定的WebView实例,因此每次我使用WebView启动一个Activity时,我必须获取WebView实例并为其注册一个新的WebviewIdlingResource。 我希望有人有一个没有任何这些缺点的解决方案。 我曾希望espresso-web软件包可以提供解决方案,但它似乎没有提供与加载有关的任何内容。

ScrollView中的Android WebView仅滚动scrollview

在我的应用程序中,我有一个ScrollView,其中包含一些线性视图,一些textview和一个Webview,然后是其他线性布局等。问题是WebView不滚动。 Scroll仅侦听ScrollView。 有什么建议么?? <– this does not scroll

使用GSAP的Android webview:尝试删除非JNI本地引用,转储线程

在使用Nexus5仿真器的Android Studio 1.4中,每次在webview中使用GSAP都有3Danimation(x,y,rotationX,rotationY,rotationZ)时,logcat会发出大量此消息: Attempt to remove non-JNI local reference, dumping thread 这似乎不会影响我的webapp的行为,除了产生消息时的一些口吃,这对于需要几秒钟完成的animation来说是多次。 关于如何停止的任何想法,或者这甚至是一个问题? 更新:我的测试设备,三星Galaxy S4上没有出现错误。 所以它可能只是一个模拟器问题。

Android 4.4在WebView的onReceivedError中给出了ERR_CACHE_MISS错误

我的布局中有一个webview。 默认情况下,会在其中打开搜索表单。 在搜索时,搜索表单下方会显示一个列表部分。 如果单击列表中的任何链接,则会打开详细信息页面。 现在我想控制webview的后退导航。 我将此代码放在Activity中。 @Override public boolean onKeyDown(int keyCode, KeyEvent event) { Log.d(“TYPE”, TYPE); WebView myWebView = null; if (TYPE.equalsIgnoreCase(“REPORT_ACTIVITY”)) myWebView = reportView; if (TYPE.equalsIgnoreCase(“FEEDBACK_ACTIVITY”)) myWebView = feedbackView; if (myWebView != null) // Check if the key event was the Back button and if there’s history if ((keyCode == KeyEvent.KEYCODE_BACK) && myWebView.canGoBack()) { […]

webview shouldinterceptrequest示例

我需要知道shouldinterceptrequest是如何工作的。 我不知道如何创建和处理此方法来读取和替换CSS链接。 谢谢!