gpt4 book ai didi

android - Webview加载远程url

转载 作者:行者123 更新时间:2023-11-29 03:51:04 25 4
gpt4 key购买 nike

首先,免责声明:我对 iPhone、Android 或任何移动开发完全陌生。另一方面,我长期以来一直在开发网站(php、javascript)。

我有一个适合移动设备并且运行良好的网站。但是,我需要一些功能,例如防止屏幕变暗(我的网站设计为在没有用户交互的情况下使用多个小时,同时永久可见,或者例如能够发送通知(带有声音等,以吸引用户关注))。

这让我考虑使用 WebView 。据我所知,它是关于创建一个 native 应用程序,该应用程序只是一个 WebView (没有工具栏的浏览器)并使用 html 和 javascript 进行操作。它将使用一些 native 函数来执行一些 native 操作(例如我想要的操作)。

我四处搜索,但没有对此的具体回应:我可以告诉 webview 从远程站点永久加载内容吗?我的意思是,我的网站是基于 php (zend) 的,有许多 jquery 内容操作。我可以告诉他类似 LOAD htp://www.mysyite.com 的内容,然后让他做其他事情吗?绝对不适用本地内容,一切都是远程的。 webview 只是网站的“界面”。

另外一个问题是:我可以在上面使用 jquery 吗? Ajax 调用?地理位置?我的意思是,在浏览器中我可以,我只是想知道在 WebView 中我是否可以。

我读到phonegap 可以做到这一点。但大多数时候,当我谈论phonegap和webview时,我读到人们谈论本地加载页面而不是永久远程加载。

最后,是的,我将来会构建一个原生应用程序。但现在,我根本没有时间同时学习android、ios和黑莓。非常感谢您的回复。

最佳答案

仅适用于 Android:

Can i tell him something like LOAD htp://www.mysyite.com and let him do everything else from it ? absolutely no local content applies, everything is remote. The webview would just be an "interface" to the website.

是的,当然可以。假设您的 Activity 中有一个 WebView (这非常简单),您将加载类似以下的网页:

WebView myWebView = .... // get a reference from XML or if you just created get its ref
myWebView.loadURL("http://www.mysite.com");

我将从 this API Guide 开始文章。另外,taken from WebView JavaDoc :

WebView 有多个自定义点,您可以在其中添加自己的行为。这些是:

  1. 创建并设置 WebChromeClient子类。当发生可能影响浏览器 UI 的事件时调用此类,例如,在此处发送进度更新和 JavaScript 警报(请参阅调试任务)
  2. 创建并设置 WebViewClient子类。当发生影响内容呈现的事情时(例如错误或表单提交),它将被调用。您还可以在此处拦截 URL 加载(通过 shouldOverrideUrlLoading())。
  3. 修改WebSettings ,例如使用 setJavaScriptEnabled() 启用 JavaScript。使用 addJavascriptInterface(Object, String) 方法将 Java 对象注入(inject)到 WebView 中。此方法允许您将 Java 对象注入(inject)到页面的 JavaScript 上下文中,以便页面中的 JavaScript 可以访问它们。

另请注意, WebView 不如手机浏览器强大。这是SO thread一位 friend 发布了一个有趣的问题。您可能会发现他得到的答案很有帮助。

关于android - Webview加载远程url,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17049784/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com