即时消息应用程序的 Apache cordova 或本机开发?
Posted
技术标签:
【中文标题】即时消息应用程序的 Apache cordova 或本机开发?【英文标题】:Apache cordova or native development for an instant messaging app? 【发布时间】:2015-02-15 11:46:35 【问题描述】:我必须为 ios 和 android 开发一个移动应用程序。
我不确定是使用 Apache Cordova 的跨平台方法还是使用 Eclipse ADT 和 Xcode 在本机环境中进行开发。 原生开发的问题是我必须构建两个不同的应用程序,为这两个平台做同样的工作。
我应该使用 Apache Cordova 构建单个 html/CSS/javascript 应用程序,但我对此类应用程序开发的效率存在严重怀疑。
该应用程序是用于医生的即时通讯系统,具有多媒体元素的交换功能。通过 TLS 等加密协议保护消息交换非常重要。
具体来说,我必须实现:
一个多平台注册和认证系统通信 通过 php 语言和 mysql DBMS 使用 Web 服务器; 请求和响应格式用 XML 文档定义;
通过提供机会与 特定用户;
研究医疗案例,提供参与的机会 讨论一个或多个案例;
创建带有描述、媒体附件和首字母的医疗案例 根据不同的医学专业选择参与者;
可以修改输入信息的用户配置文件。
推送通知系统(Android 版 GCM)。点击 通知会直接打开聊天;
通过 HTTPS 协议保护客户端-服务器通信,这 包括非对称加密和数据完整性功能 检查。
通过聊天可以:
通过点击照片显示用户个人资料; 报告任何滥用行为; 通过电子邮件发送对话 在 Facebook 和 Twitter 上分享对话。我了解到混合应用程序开发效率低下,因为它依赖于 WebView 原生组件,这使得应用程序变得更重且更慢。
另一方面,原生开发方法需要更多时间,但可以确保最佳性能。 (如果应用程序写得很好)。
根据我列出的特征,您建议采用哪种方法?
谢谢:)
【问题讨论】:
Node js 和 socket io 最适合聊天 【参考方案1】:当然,如果您有足够的资源(时间、金钱等),创建原生应用程序总是更好的解决方案。
但是如果您需要节省开发时间和应用程序的功能支持,我建议您使用混合方法,但不要使用 Cordova 或 Phonegap。您可以在服务器上创建 UI 和逻辑的某些部分作为独立的 HTML5 组件,然后将其加载到应用程序的 webview 中。
简单示例:您必须实现允许用户撰写关于医生的评论的表单。
-
在您的服务器上创建 HTML5 表单页面(使用 js 和 css)。您可以使用 jquery mobile 使其响应。
在您的应用(IOS 和 Android)的 webview 上加载此页面。
验证和提交表单的逻辑也在服务器(php、js)上,所以不需要在应用程序内部创建。
这种方法允许您仅将 HTML5 用于简单的事情,例如表单、弹出窗口等。您还可以随时灵活地选择要如何使用它,并且不受任何外部框架的限制。
【讨论】:
以上是关于即时消息应用程序的 Apache cordova 或本机开发?的主要内容,如果未能解决你的问题,请参考以下文章
cordova 消息推送,告别,消息推送服务器,和 苹果推送证书
Apache Cordova:“加载资源失败:服务器响应状态为 404(未找到)”
使用 Firebase 和 cordova-plugin-firebase 在 Apache Cordova Android 应用程序上构建问题