首页 > 解决方案 > 跨平台开发:如何缓解依赖 3rd 方插件实现原生功能的问题?

问题描述

我正在开始一个新项目,它将是一个跨平台的移动应用程序。我正在考虑使用带电容器的 ReactNative、NativeScript 或 Ionic 4。

关于所有这些技术,我注意到的一件事是自定义行为或对本机功能的访问需要插件。

虽然有各种各样的开源插件,但这可能是一个风险。例如,假设您的应用程序依赖于 iBeacon 插件。

  1. 如果没有 iBeacon 插件怎么办
  2. 如果有一个插件但它没有做你需要它做的事情怎么办
  3. 如果有插件但开发人员放弃了插件或无法解决问题等怎么办?

学习如何构建插件是您唯一的选择吗?

我们是一家小公司,因为我们忙于主要产品,所以没有太多时间在插件上。

标签: react-nativepluginsnativescriptcross-platformionic4

解决方案


过去几个月我一直在开发 Ionic 应用程序,并遇到了您提到的问题。简而言之,如果没有插件或插件有问题,你就完蛋了,这意味着你必须自己构建(或修复)插件。

Ionic 的好处是它建立在属于 Apache 的 Cordova 之上。他们有相当多的插件集合,可以在 Ionic 中完美运行并且维护良好。它们涵盖了主要功能。

Ionic self 有一个带有快速说明的社区插件列表,你可以在这里找到它。他们中的大多数工作正常,有些是错误的。他们还拥有高级访问权限(称为 Premier),可让您访问官方插件和支持,但这非常昂贵。

好消息是:一旦你知道怎么做,构建你自己的插件就不难了(如果你知道 JavaScript 和原生代码的话)。但是,要找到教程并不容易,特别是知道 Ionic 版本之间存在很大差异。本教程是一个很好的起点(查看底部的参考书目)。

不是在谈论原生,而是在谈论 Ionic 中的插件:有时我也使用 Angular 插件,大多数情况下是成功的。关于 JS 库,有些是开箱即用的(比如 HammerJS),有些是我无法让它们工作的(比如 jQuery)。


推荐阅读