我们正在构建一个结合 dojo 和其他几个 GIS 相关框架的 webapp,以将地图和其他数据呈现给浏览器。它在桌面浏览器(firefox、chrome)中运行良好。然而,当我们启动一个安卓模拟器时,性能非常慢。我们为模拟器增加了大约 2 GB 的内存和大约 256 MB 的 VM。
问题可能是什么?
开发一个单独的 android 应用程序还是继续将其作为移动网络本身更好?
我们正在构建一个结合 dojo 和其他几个 GIS 相关框架的 webapp,以将地图和其他数据呈现给浏览器。它在桌面浏览器(firefox、chrome)中运行良好。然而,当我们启动一个安卓模拟器时,性能非常慢。我们为模拟器增加了大约 2 GB 的内存和大约 256 MB 的 VM。
问题可能是什么?
开发一个单独的 android 应用程序还是继续将其作为移动网络本身更好?
基本上,您的问题依赖于与 facebook 发生的事情相同的效果。他们最初的“应用程序”是基于 HTML5 开发的,速度慢得像糖蜜。他们意识到,如果他们成为本地人 - 他们的表现会提高。实际上,它是在打击火箭发射器。
对于 android 和 android 应用程序也是如此。
如果您将其构建为 Web 应用程序,它将拉取请求,然后将其呈现为 html,就好像它是一个打开的浏览器一样,而不是使用系统中内置的本机地图应用程序。
如果您足够精明,并且您的代码比使用 dojo 框架的任何东西都更多的是 JS,请查看 Titanium 框架加速器,以将您的本机 Web 代码转换为本机应用程序。虽然需要调整才能调用本机 API 地图协议
安卓模拟器比较慢,最好在真机上测试。
无论如何,如果性能是必须的,您应该开发一个原生应用程序。HTML5 正在改进,但在某些情况下您需要本机代码。或者,如果您的代码主要是 Javascript,则有一些 javascript 编译器可以生成本机代码并提高性能。