android - 您可以使用 native 应用程序做什么,而您不能使用混合应用程序

标签 android ios angularjs cordova ionic-framework

随着过去几年混合应用领域的所有发展(例如 IonicngCordova),我想知道:您可以使用原生应用做哪些混合应用不能做的事情?

我知道有一些 native 功能是单个操作系统独有的,例如 Multipeer Connectivity在 iOS 上。

有人可以提供 Android 和 iOS 独有的功能列表,或者 Android 与 iOS 与 Ionic 的功能比较吗?

最佳答案

Ionic 基于使用 WebView 的 Cordova/PhoneGap。我将尝试回答更一般的部分,你不能用混合应用做什么,或者更准确地说,使用 WebView 似乎不可能的事情的例子:

  • 通过 overlays 可以用原生元素替换 DOM 元素 ,但它们不能附加到 DOM,因此如果您的元素通过 JavaScript 或 CSS 设置动画,它会滞后(假设您手动通知叠加层其预期的新位置);滚动应该可以同步。
  • 无法很好地自定义辅助功能
  • 无法自定义文本选择/长按
  • 另一个很好(但令人沮丧)的例子是,在 iOS 上,您无法移除键盘上的辅助栏。有一些插件可以为某些版本的 iOS 做到这一点,但它非常脆弱并且不能 100% 正常工作。

如前所述,有很多东西仅适用于 iOS 或 Android,但它们几乎总是只是因为没有人为其他平台制作插件。

关于android - 您可以使用 native 应用程序做什么,而您不能使用混合应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30777498/

相关文章:

Android 通过包名获取安装位置

android - 强制 android 使用方形启动器图标

ios - 如何获取 Apple Watch 硬件标识符?

javascript - 通过单击 ng-repeat 形式的 Angular xeditable 字段停止滚动到顶部

javascript - 使用 $compile 绑定(bind) HTML 内容时,AngularUI Bootstrap Carousel 无法正常工作

java - 单击按钮更改图像

android - 如何更改操作栏/标题栏字体?

来自字符串的 iOS NSDate 只有时间

ios - objective-c - 按钮无法推送到 VC

AngularJS Material 对话框在 Mac Safari 中无法正确显示