SpruceIDMobileSdkRs 0.0.27

SpruceIDMobileSdkRs 0.0.27

Simon Bihel 维护。



  • Spruce Systems, Inc.

移动 SDK Uniffi 绑定

成熟度免责声明

在其当前版本中,Mobile SDK 尚未经过正式的安全审计,达到适用于生产系统所需的信心水平。此实现目前仅适用于探索性和实验性工作。我们欢迎对此实现的可用性、架构和安全性的反馈,并承诺在 v1.0 发布之前,由知名安全公司进行正式审计。

项目结构

.               // The Rust crate is at the root
│
├── kotlin      // Contains the Android library project (without the generated
│               // source or dynamic libraries, these are present in the
│               // published package associated with this repo)
│
├── MobileSdkRs // Contains the iOS library, with all the generated source files
│               // and dylibs, as Git is the package manager of Swift
│
├── tests       // Contains cargo tests for Kotlin and Swift for the generated
│               // libraries. These tests act as sanity checks to ensure the
│               // generated libraries will be usable, and are not meant to be
│               // full-fledged functional tests.

版本发行

使用 release Github Action,这是一个手动触发的操作。

构建

Kotlin

cd kotlin
./gradlew build

Swift

cargo swift package -p ios -n MobileSdkRs

您将需要 cargo-swift,您可以使用 cargo install cargo-swift 进行安装。

测试

为了运行测试,您需要下载 JNA 的副本

wget https://repo1.maven.org/maven2/net/java/dev/jna/jna/5.14.0/jna-5.14.0.jar

JNA 还需要在您的 CLASSPATH 中显式指定。仅仅位于目录中并不一定有效。以下是在 .bashrc 文件中进行此配置的一个示例

export CLASSPATH="/home/yourUser/.local/lib/jna-5.14.0.jar:$CLASSPATH"

这允许您像平常一样运行 cargo test

或者,如果您不喜欢向环境中添加,您可以在每次调用 cargo test 时指定它

CLASSPATH="/home/yourUser/.local/lib/jna-5.14.0.jar" cargo test