我正在尝试以下示例,但使用外部URL: 使用WebViews
该示例显示如何从assets文件夹加载HTML文件(file:// url)并将其显示在WebView中.
但是当我尝试使用外部网址时(例如http://google.com))时,我总是收到"网站不可用"错误.Android的内置浏览器可以访问所有外部URL.
我怀疑它与权限有关,但无法确认.
单击Android浏览器中的链接时,默认情况下,目标链接区域将以橙色框突出显示.然后longpress打开链接处理的上下文菜单(复制,粘贴,新窗口等).有没有办法在webview中禁用其中一个/两个?我正在使用scriptaculous中的高亮代码,默认的android链接样式正在覆盖效果的顶部.
我正在开发一个使用Webview来显示数据的Android应用程序.我在webview中使用的网站使用HTML 5的localStorage API.
要启用此功能,我已将webview设置设置为:
webview.getSettings().setDomStorageEnabled(true);
webview.getSettings().setJavaScriptEnabled(true);
Run Code Online (Sandbox Code Playgroud)
所以localStorage API工作,但当我关闭应用程序(并终止进程)时,localStorage被完全擦除,当我重新加载它时,我的所有数据都丢失了.
我的问题很简单:即使关闭应用程序,如何使Web视图的DomStorage持续存在?
谢谢你所有未来的答案.
我有一个iPad在webview中运行一些Javascript,但有时它只是拒绝工作.有没有人有办法调试这类问题?
WebView在我的应用程序中使用视图时,无论我强迫它访问哪个页面,它都说没有找到网页.这是我的代码:
MainActivity.java
package com.testing.webview;
import android.app.Activity;
import android.os.Bundle;
import android.webkit.WebSettings;
import android.webkit.WebView;
public class MainActivity extends Activity
{
@Override
public void onCreate( Bundle savedInstanceState )
{
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
WebView webView = (WebView) findViewById(R.id.webView1);
WebSettings webSettings = webView.getSettings();
webSettings.setBuiltInZoomControls(true);
webView.loadUrl("http://www.google.com");
}
}
Run Code Online (Sandbox Code Playgroud)
main.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical">
<WebView
android:id="@+id/webView1"
android:layout_width="fill_parent"
android:layout_height="fill_parent" />
</LinearLayout>
Run Code Online (Sandbox Code Playgroud)
你可以看到它是非常基本的代码.确实有互联网连接,因为我可以打开正常的浏览器应用程序并像平常一样访问任何网页.
是否有URI方案可以将Mobile Safari打开到特定的URL?
例如,
<a href="safari://open_url/?url=google.com">Open Google in Safari</a>
Run Code Online (Sandbox Code Playgroud) 编辑:几年前我参与了这个项目,不幸的是我无法验证在给定的场景中是否有任何答案.
我很难用一个WebView来显示我们的博客.在启动时,它工作得很好.用户可以导航到WebView中的不同链接.要返回博客,WebView外部有一个按钮,可以再次加载主博客站点.
问题是,第二次调用loadUrl后没有加载任何内容.这是我的代码:
private WebView wv;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
this.setContentView(R.layout.blog);
wv = (WebView) findViewById(R.id.blog_webview);
wv.getSettings().setJavaScriptEnabled(true);
wv.setWebViewClient(new WebViewClient() {
@Override
public void onPageStarted(WebView view, String url, Bitmap favicon {
MyLog.logDump("onPageStarted: " + url);
}
@Override
public void onPageFinished(WebView view, String url) {
MyLog.logDump("onPageFinished: " + url);
}
});
wv.loadUrl(Constants.BLOG_URL);
}
Run Code Online (Sandbox Code Playgroud)
我的OnClickListener调用的函数如下:
public void reLoadUrl() {
wv.loadUrl(Constants.BLOG_URL);
}
Run Code Online (Sandbox Code Playgroud)
但是,尽管onPageFinished和onPageStarted中的日志显示我的wv.loadUrl正在被调用并且它正在加载正确的url,但webview中的内容本身并没有改变.我已经尝试清除缓存,历史,视图,尝试过不同的WebSettings,试图使用webView.goBack() - 而不是结果.这些想法也不起作用:android中的奇怪的webview goBack问题
有时,reLoadUrl会显示所需的结果 - 但一旦失败,它就再也无法工作了.有什么想法会发生什么?我确实尝试过阅读WebView代码但我找不到任何可以帮助我的东西.
我唯一可以补充的是,我们正在使用一些严重依赖于webViews的广告网络 - 我试图将它们关闭,但我没有删除这些库,所以我不确定它们不是罪魁祸首.
有任何想法吗??
我有一个Android应用程序,我正在使用在android 2.3.3上运行的模拟器开发,嵌入式WebView在嵌套在linearlayout(垂直)的framelayout中.无论我使用什么代码,它实际上从未做过任何事情.我有Android应用程序设置为INTERNET的权限.即使在尝试加载HTML代码时也是如此.我得到一个空白的白页,没有任何错误.在logcat中也没有.
WebView wview = (WebView)findViewById(R.id.webView1);
wview.getSettings().setJavaScriptEnabled(true);
Run Code Online (Sandbox Code Playgroud)
我尝试了所有这三个尝试将任何内容加载到webview中:
wview.loadUrl("http://www.google.com");
wview.loadData("<HTML><BODY><H3>Test</H3></BODY></HTML>","text/html","utf-8");
wview.loadDataWithBaseURL(null, "<HTML><BODY><H3>Test</H3></BODY></HTML>","text/html","utf-8",null);
Run Code Online (Sandbox Code Playgroud)
这三个都给了我相同的结果.没有.
有任何想法吗?
我正在开发Android应用程序,我通过Facebook SDK登录.在应用程序中,我还在webview中显示了facebook社交评论.但问题是,即使用户通过fb sdk登录,webview也不知道它,并且发布新评论需要用户登录.
我的问题是:有没有办法如何将登录从facebook sdk会话传递到webview?例如,通过一些javascript函数,我提供访问令牌字符串并在webview上调用它,以便它登录并准备发布评论?
谢谢 :)
使用webview.loadUrl(url)方法我打开一个网址.如果我单击Button视图上的任何一个,它将指向另一个页面.现在我想获得有向页面的网址.我怎么才能得到它?
我还想要在webview上显示的内容.如何获取内容WebView?