android - Intraweb HTML5 应用程序、git 和数据库——它们融合了吗?

标签 android ios html git

我在这里有一些新的进展,也许这是一个转贴(如果是这样>抱歉)。

我需要一些关于前进方向的指示。我之前制作了一个 Android 应用程序,发现自己在 UI 上使用了大部分开发时间。我希望用 HTML5 设计 UI 并将其分发到 android 和 iOS

为了集中精力,我对原生和混合进行了大量研究。遇到了一堆平台,如 PhoneGap、Appcelerator、Trigger.io 和 AppGyver(发现后两个很有吸引力)。但是现在我很困惑......

我基本上希望创建一个内部网络环境,允许团队开发将数据输入数据库的 HTML5 内容,同时将开发和数据库置于严格的版本控制之下。

想到这样的设置

  • 托管源 HTML5 代码和数据库的本地服务器 - 上游 git。
  • 然后在桌面计算机上通过 git 完成开发
  • 移动设备/平板电脑 pull 源(git origin)并创建实例,将数据条目 pull 到上游(以及所有其他远程)
  • 多个单元可以在同一个实例上工作,并有助于将请求数据 pull 到源。他们会立即看到变化(逻辑应确保没有冲突 - 考虑对设备执行 ping 操作)

如果添加了一些新的 html5,则无需通过应用商店分发新应用(没有改变行为,因此没有违反 list )。

目前我正在考虑制作一个具有 webview 并执行 git 命令的 native 应用程序,但我担心我会被卡住(没有 iOS 编程经验)。这是矫枉过正吗?

我一点也不反对混合供应商 - 只是想知道他们是否会让我实现我的目标。

如果有人有一些关于如何归档类似任务的在线教程的链接,或者可以提供有用的提示/指针,那么我将不胜感激。

我会为所有对我有帮助的答案投赞成票,并为对我帮助最大的答案设置解决方案。

最佳答案

多年来,我一直致力于将网络技术打包到 native 应用程序中。您必须考虑两件事。

首先,您的应用程序将只是一个简单的 HTML 页面,还是具有精美的 UI、非常动态的 UI 交互和动画?如果它很复杂且非常动态,请坚持使用 native 应用程序。它们的主要优点是性能,它非常优于 HTML5 中的 WebView 打包应用程序。

其次,WebView 有很多使用限制。它不像您在手机/平板电脑上使用的 Chrome 浏览器。过于花哨的操作可能会导致 WebView 出现问题,并且您在构建 UI 上花费的额外时间将花在解决非常烦人的小问题上。

另一个问题是,由于沙箱限制,使用 bundle 在您的应用程序中的 git 将很难与 WebView 集成。我当然不建议这样做。如果您不使用 native 手机硬件,如相机和其他硬件,您可以在 WebView 中显示一个远程 HTML5 站点。这是一个更加简单和安全的选择。

还有一点要注意。这些打包的 JavaScript 库有不同的目标。 Cordova(PhoneGap 通过一些 Adob​​e 支持的功能对此进行了扩展)目标是让您的 JS 代码可以使用 native 电话功能,它与 UI 无关。提到的 Ionic 专注于 UI 开发。还有其他专注于 UI 并与 PhoneGap/Cordova 一起使用的库。我对使用基于 HTML5 的技术的精美动态 UI 的建议是 Sencha Touch 框架,它现在 bundle 在 ExtJS 6 中。尽管它们是付费框架并且需要高级 Javascript 编程。学习曲线非常大。

最后,如果您的目标是加快 UI 开发速度并且应用程序简单,则可以使用 Cordova 和另一个以 UI 为中心的框架。但我建议忘记复杂的 Git“即时”应用程序更新。如果您的应用使用许多 native 功能并且具有非常复杂和庞大的 UI,请坚持使用 native 以提高性能。

另一件需要注意的事情是,开发良好的 native 应用(在大多数情况下)消耗的网络带宽和电池生命周期要少得多。

希望这些信息对你有帮助 =)

关于android - Intraweb HTML5 应用程序、git 和数据库——它们融合了吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32933747/

相关文章:

android - Listitem 点击不适用于复选框 Android

iphone - 如何从 View 中隐藏 iphone 中的标题栏(顶部栏)

objective-c - AFNetworking 显示上传进度

ios - 强制设置核心数据检查点?

html - 如何在另一个div中定位div

javascript - 点击返回时 Google map API 中的 "TypeError: a is null"

android - 将android设备与打印机连接并打印文档

android - 如何使用 adb 命令在 android 中获取可用/空闲 sdcard 空间

android - UI 测试和 E2E 测试有什么区别?以及各有什么好处?

html - 故障排除 : Two CSS elements side-by-side, 之间有填充