更新:正如François所提到的,还有一些替代方案,例如Phone Gap,可以实现更跨平台的方法。确实,这是一个很好的建议。 我愿意接受任何建议,如果能从您的经验中学习,我将不胜感激。
旁注:仅Web应用程序在我的选项列表中并不高,因为我确实希望它可以在android市场上使用。
我即将开始将Facebook应用程序移植到android和上,我在争论是否应该将其作为 native 应用程序或作为WebView 的包装器编写。
您的体验如何?编写Web应用程序时您遇到了哪些限制?您有没有想分享的建议?也许您认为 native 应用程序才是替代之路?
为了建立讨论框架,我现在想移植的应用程序很简单
fb应用程序,其中服务器托管在Google App Engine(如果需要的话,用Java编写)中,并且所有客户端代码都是html,css和javascript(带有大量jQuery)。
该应用程序基本上是一款基于回合的两人游戏,带有一堆响应用户点击的静态图像,以及一个非常简单的聊天框(与fb聊天无关)。它可以为每个用户处理多个并发游戏(但要针对不同的对手,而不是相同)。
您认为适用于Android网络应用程序吗?
先感谢您。
PS1:无论如何,我将不胜感激,不胜感激,因此,如果您想获得更广泛的答案,请不要将自己局限于此特定示例应用程序。
PS2:是的,我阅读了developer.android.com上的“Web Apps最佳实践”页面,并点击了那里的链接,但是它并没有过多提及WebView组件的速度或可靠性,特别是在用户交互方面。在阅读了WebView描述页面中的以下段落后,出现了这个问题,这对典型场景有相当大的限制:
最佳答案
我已经实现了两个使用webview的项目,一个使用jqtouch,另一个使用jquery-mobile框架。
您像轻风起步一样继续前进,但是最后,当您查看该应用程序时,它与 native 用户体验相去甚远。 Android浏览器比iPhone浏览器慢得多。希望以后可以解决,结果是当您处理css3繁重的应用程序时,您的响应时间会变慢。在模拟器中进行开发时,Webview会让您发狂,因为它太慢了。
如果您想实现类似 native 的元素或固定的选项卡,则您需要进行很多工作,最后在将应用程序与 native 应用程序进行比较时并没有得到很好的解决方案,这很糟糕。
最后,我决定学习本土发展并成为一流的公民。当然,这将花费更多时间,但结果会让我满意。
我认为 native 开发不是 future ,将来一段时间我们将再次编写html-css-js应用程序,它们将像 native 代码一样工作,但是根据我的观点,它可能不会在2-3年内出现。
我可以建议您尝试构建Web应用程序,如果性能不能满足您的要求,请切换到 native 开发。
关于javascript - 您对Android Web应用有什么经验(限制,技巧,最佳做法)?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/5663652/