我正在学习开发适用于Android平台的混合应用程序(稍后将扩展到其他移动平台)。我已经阅读了很多文章并且已经有了一个开始,但没有找到解释这一点的东西。
我想将UI(HTML / JavaScript / CSS)文件存储在移动设备上,并通过WebView显示它。这将与远程服务器通信以通过WebService获取数据。 我没有具体理解的是:
如果有人觉得这不是正确的方法,请告诉我你对建筑的看法。
请指出正确的文章或解释您对这一特定情况的想法。
答案 0 :(得分:1)
我建议你采用不同的方法解决这些问题。如果我在你的位置,我会做以下事情:
我假设您将这些作为基于Java的Web应用程序。即使你使用PHP或其他Web开发语言,事情也会变得非常相似。
1)UI文件(HTML / JavaScript / CSS)是否会安装在Android设备的文件系统上,或者Android设备上是否会有本地嵌入式WebServer。
没有。您正在阅读的UI文件只是Web应用程序中的网页。这些网页存储在服务器上而不是本地文件系统上。我们利用浏览器连接到远程服务器,然后通过浏览器从浏览器中提取这些页面然后显示给您。
2)如果HTML / JavaScript / CSS文件在文件系统上,它们如何与远程WebService通信。假设我想对远程服务器进行AJAX调用...它是由通过WebView显示的UI(HTML / JavaScript)文件还是由WebView所在的JAVA容器处理?我不明白的是,文件系统上的HTML / JavaScript如何进行AJAX调用。
网页从服务器下载并在浏览器中显示给您。在网页本身,我们编写脚本来对适当的事件进行AJAX调用,比如点击某个按钮,或者更改某个字段的值或者@页面加载的时间等。当你想要进行AJAX调用时,全部依赖于你的项目要求。
3)如果移动设备上需要本地嵌入式WebServer,您能建议一些吗?如果这是真的,那么相同的架构也适用于其他平台,如iOS,Symbian,BlackBerry等。
正如我之前提到的,数据存储在远程服务器上,因此您不需要移动设备上的Web服务器(除非您想将移动设备用作主机或服务器设备)。由于这些是基于Web的解决方案,因此您无需考虑手机平台。无论是Android,黑莓,Apple还是Symbian手机,您只需使用手机中的网络浏览器即可连接到服务器。