- 版本:3.2.3
- GitHub:
- NPM: https://npmjs.net.cn/package/%40approov%2Fnativescript-approov
- 下载量
- 前一天:9
- 上周:26
- 上个月:51
NativeScript Approov 插件
此插件提供了 NativeScript 应用程序在 Android 和 iOS 上使用 Approov 功能的源代码。
为了最小化必要的代码更改,集成钩子连接到底层网络堆栈,以便根据需要添加动态锚定和 Approov 功能(如 Approov 令牌添加)。
结构
一个 TypeScript 接口允许配置和控制 Approov,并访问更高级的功能。实际上,这个 TypeScript 层连接到一个位于 Approov SDK 自身的本地代码层。这个桥接层必须预先构建并打包到插件中。其源代码可以在存储库顶层的 approov-service-native
文件夹中找到。
对于 Android,Approov SDK 本身通过 gradle jitpack 依赖项包含在存储库中,该存储库包含最新的 SDK。对于 iOS,SDK 实际上包含在这个存储库中。
示例比较项目
与仅包含 TypeScript 代码的大多数插件相比,此插件项目的结构似乎异常复杂,并且它需要使用桥接类型定义来跨调用本地库。
此项目需要除了桥接层和包含专有 Approov SDK 之外的自定义本地代码。最接近的例子可以在 https://github.com/NativeScript/plugins/tree/main/packages/local-notifications
找到。该 local-notifications
插件还需要特殊的 Android .aar
和 .xcframework
库。
开发
对于开发,不建议使用文件路径在本地包含插件。尽管这被支持,并且大多数情况下可以正常工作,但这似乎会在构建过程中产生许多问题,因为它会生成文件系统符号链接。
相反,对于本地开发,建议为每个所需更改生成一个插件 .tgz
并安装它。
本地插件可以通过将工作目录更改到 publish
并执行 ./pack.sh
来生成。这将生成一个新的软件包 publish/package/approov-nativescript-approov.x.y.z.tgz
。建议每次都更改版本号,在 src/package.json
中。
将其添加到应用程序项目中 ns plugin add ${REPO-ROOT}/publish/package/approov-nativescript-approov.x.y.z.tgz
。这将自动替换任何之前的插件版本。