经过一些研究,我发现了一些有关如何在Ionic框架中添加第三方android库的信息。显然,我们可以在Ionic项目中添加和使用.aar文件。我的问题是,如果我包含一个.aar文件,该项目是否仍将是一个跨平台的? iOS设备可以运行它吗?
答案 0 :(得分:1)
据我了解,您想使用基本上是用Native Android / iOS编写的库。
注意:我们不能直接在ionic应用程序中使用本机代码。
那么下一个问题是如何在Hybrid应用中调用本机代码或库?
要从Javascript调用本机代码,我们需要Cordova插件 它将通过混合应用->本机代码和本机代码->混合应用进行通信。
让我们在网络视图中构建应用,然后从中调用本机代码 JavaScript
Cordova提供了许多默认插件,如下所示:
"cordova-android": "~6.3.0",
"cordova-ios": "^4.5.4",
"cordova-plugin-advanced-http": "^1.9.0",
"cordova-plugin-device": "^1.1.7",
"cordova-plugin-file": "^6.0.1",
"cordova-plugin-inappbrowser": "^1.7.2",
"cordova-plugin-ionic-webview": "^1.1.16",
"cordova-plugin-native-spinner": "^1.1.3",
"cordova-plugin-network-information": "^1.3.4",
"cordova-plugin-proguard": "^1.0.0",
"cordova-plugin-splashscreen": "^4.1.0",
"cordova-plugin-whitelist": "^1.3.3",
"cordova-sqlite-storage": "^2.2.0",
所以这些插件主要用于利用本机应用程序框架,例如
对于SQLite数据库存储,我们使用了cordova-sqlite-storage
插件
对于启动屏幕,我们使用了cordova-plugin-splashscreen
插件,依此类推...
所以下一个问题是什么是Cordova插件?
构建Cordova插件意味着我们正在编写一些JavaScript以进行调用 我们还编写了一些本机(Obj-c / Swift,Java等)代码,以及 将结果返回到我们的JavaScript。
总而言之:当我们想做某事时,我们会构建一个Cordova插件 本机还没有Web API类似物,例如访问 iOS上的HealthKit数据或Android上的指纹扫描仪。
参考:Max Lynch(中型博客)
因此,如果要使用.aar文件,则需要构建自定义插件。
此.aar文件将用于Android,对于iOS,您需要搜索相关框架。
希望这将有助于了解混合应用程序中的所有In&Out。
有用的链接: