Skip to content

Kotlin, Android e Java

O Kotlin SDK é a pilha de cliente padrão para as aplicações JVM e Android. Ele vive sob kotlin/ no repositório Iroha e é dividido por plataforma, de modo que o código portátil não adquire dependências de Android.

Módulos

ArtefactoTipo .Utilização
org.hyperledger.iroha.sdk:core-jvmJARPure Kotlin/JVM Norito, modelo de dados, criptografia, transação, Torii e código de protocolo
org.hyperledger.iroha.sdk:client-androidAARAndroid armazenamento de chaves, telemetria do dispositivo e JNI- integrações de clientes apoiadas
org.hyperledger.iroha.sdk:offline-wallet-androidAARAndroid Transporte e integração de carteiras offline baseadas em client-android

Os artefatos ainda não foram publicados no Maven Central. Construí-los e publicá-los localmente a partir da revisão de fonte fichada Iroha:

bash
cd kotlin
./gradlew publishToMavenLocal

Em seguida, selecione apenas o artefato de que a sua aplicação necessita:

kotlin
repositories {
    mavenLocal()
}

dependencies {
    implementation("org.hyperledger.iroha.sdk:core-jvm:0.1.0")
    // Android client features:
    // implementation("org.hyperledger.iroha.sdk:client-android:0.1.0")
    // Android offline-wallet features:
    // implementation("org.hyperledger.iroha.sdk:offline-wallet-android:0.1.0")
}

core-jvm não contém dependências de Android. Mantenha o código do cliente e armazenamento-chave Android em client-android, e use offline-wallet-android apenas para carteira offline e fluxos JNI de Android

Kotlin e Compatibilidade com o Java

O público API é Kotlin- primeiro e fornece interop de Java onde JVM As mudanças equivalentes são refletidas nos correspondentes java/ Implementação. Android As integrações devem começar com a Kotlin Os artefatos acima.

Todos . Kotlin módulos de aplicação JDK 8 API Compatibilidade no momento da compilação com -Xjdk-release=8, Embora a própria cadeia de ferramentas de construção use JDK 21. Não use JDK 9+ APIs em SDK Código.

Construir e testar

Realizar os testes portáteis JVM:

bash
cd kotlin
./gradlew :core-jvm:test --console=plain

Construir os artefatos Android:

bash
./gradlew :client-android:assembleRelease \
  :offline-wallet-android:assembleRelease --quiet

Cobertura atual

O Kotlin SDK inclui:

  • Norito codificação e decodificação
  • Gestão de contas canônicas e endereços de activos
  • Construção de transações, assinatura e envelopes offline
  • Clientes Torii HTTP, WebSocket e SSE
  • Modelos de assinatura múltipla, assinatura, SoraFS, Nexus e Connect
  • Android Integrações de teclado e telemetria do dispositivo
  • Transporte Android desconectado QR, Próximo e NFC

Consulte o Kotlin SDK README para os comandos de construção específicos do módulo APIs e exatos.