繁体   English   中英

写一个手机电台应用程序 - Javascript / HTML / CSS可行,还是我们需要去原生?

[英]Writing a mobile phone radio station app - is Javascript/HTML/CSS viable, or do we need to go native?

我想编写一个应用程序,将MP3从服务器流式传输到美国三大智能手机操作系统(iPhone,Blackberry和Android)中的任何一个。

以下是我关注的权衡:如果我本地编写应用程序,它将获得最佳用户体验,并且如果我愿意,可以添加更多功能,但是我将拥有3个单独的代码库,这违反了干原则。

如果我使用其中一个框架用Javascript / HTML(例如Rhomobile Rhodes )编写它,那么我有一个代码库用于所有主要平台,所以我没有违反DRY并且开发过程在这方面更简单,但是a)用户体验会受到影响,并且b)我使用SoundManager在iPhone上使用Javascript播放MP3文件进行了一些简单的测试,并且它立即开始吸吮(例如在“酷,我可以玩”之后的实验的第二阶段)一个MP3“是”我无法访问ID3标签?这很糟糕。“)。

我想知道在开发多个移动平台方面有经验的人是否可以确认或否定我的印象:是否可以使用Javascript和HTML进行跨平台开发(特别是对于多媒体应用程序)? 或者是“开发和维护三个独立的本机代码库”的方式去这里?

提前致谢。

编辑:这个问题假定我必须这样做一个应用程序。 我知道只提供mp3并让用户iPhone / Android / Blackberry Media Player处理它们可能要好得多,但就我的目的而言,这些解决方案不属于这个问题的框架。

在为Pandora(主要是BlackBerry)开发了几个移动应用程序后,我可以告诉您,如果不将每个用户体验作为本机应用程序,那么以我们想要的方式获取用户体验将非常困难(如果不是不可能)。 跨平台框架可能适用于“典型”移动应用程序,该应用程序围绕某些树状菜单导航,显示信息,对后端服务进行一些调用等。但我还没有看到一个公开全面的多媒体API的应用程序。 我也能理解为什么 - 在播放媒体时,每个平台肯定都有它的怪癖。 即使是在播放列表中预加载下一首曲目这样简单的事情也需要自定义代码。 或选择将音频路由到哪个音频路径(蓝牙?耳机?)在BlackBerry上,流式音频具有特殊的网络要求,因为您无法使用默认的BIS或BES传输 - 它必须通过Direct TCP,WAP2或Wi-Fi (如果可供使用的话)。 再次,更多自定义代码。

如果有任何安慰,可以在BlackBerry和Android之间共享一些代码 - 即不使用本机API的业务逻辑。 由于BlackBerry使用J2ME,因此它只是Android使用的J2SE的一个子集。

我会选择“开发和维护三个独立的本机代码库”。 正如您所说,您将提供更加集成的本机用户体验,并提供尚未通过HTML / JavaScript提供的功能。

我已经成功构建并维护了一个运行在Android,iPhone,J2ME和Symbian上的应用程序,这不是一个大问题。

谢谢,看看Jango,www.jango.com,它的所有HTML / JS的外观。 工作得很好。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM