本文へ移動
Launch ドキュメントに戻る

Markdown をダウンロードGitHub の原文

Launch アプリ連携パッケージ

Launch 0.1.6 は 9 言語すべてに公式 Licentivo SDK 0.11.6 を組み込んでいます。対象言語の Launch パッケージのみをインストールしてください。実装、デフォルトアダプター、ライセンス通知、SDK リンク設定が含まれます。TypeScript 宣言は JavaScript に属し、信頼できる Go Web バックエンドは追加のサンプルです。公開ソース、レジストリコマンド、言語ごとの利用状況は Launch SDK リポジトリとその公開状況で管理されています。

0.1.6 の更新には curl config-package と FindCURL の利用者向けの上流 C/C++ CMake 修正が含まれます。ライセンスプロトコル、アプリ API、アカウントライフサイクルは変更されていません。既存アプリは連携コードを変更せず Launch パッケージを更新して再ビルドできます。0.1.6 公開記録は公開状況とクリーンインストール検証をローカルビルドとは別に追跡します。

言語 単一の Launch 成果物 パッケージソース/API ガイド
Go 自己完結型モジュール ZIP pkg/launchclient
Python licentivo_launch-0.1.6-py3-none-any.whl sdk/python
C# / .NET 8 Licentivo.Launch.0.1.6.nupkg sdk/csharp
Java 17 launch-client-0.1.6.jar と POM sdk/java
JavaScript / Node.js licentivo-launch-0.1.6.tgz sdk/javascript
Rust licentivo-launch-0.1.6.crate またはソース ZIP sdk/rust
Ruby プラットフォーム用 Launch gem またはソース gem sdk/ruby
C Launch ネイティブ CMake インストール ZIP sdk/native
C++ 同じネイティブアーカイブ、C++17 API sdk/native

公開レジストリからインストール

公開 0.1.6 のインストールチェックは Go、Python、C#、Java、Node.js/TypeScript、Rust、Ruby、C、C++ の 9 言語すべてで成功しました。以下のレジストリコマンドとネイティブダウンロードは公開され、独立した利用者によって検証されています。公開状況には正確なパッケージチェックサム、インストール結果、プラットフォームの制限が記録されています。

go get github.com/spf86/licentivo-launch-sdk/pkg/launchclient@v0.1.6
python -m pip install licentivo-launch==0.1.6
npm install @licentivo/launch@0.1.6
dotnet add package Licentivo.Launch --version 0.1.6
cargo add licentivo-launch@=0.1.6
gem install licentivo-launch --version 0.1.6

Java は Maven/Gradle 座標 com.licentivo.launch:launch-client:0.1.6 を使用します。 C/C++ はバージョン付き GitHub リリースの ABI 互換ネイティブアーカイブを使用します。 レジストリへの反映と検証結果については公開状況を参照してください。

ダウンロードした配布物をインストール

integration-packages.json に記載された成果物を使用します。各言語には sdk_managed: true と requires_separate_official_sdk: false が記録されています。インストール前に SHA256SUMS を検証してください。

python -m pip install ./licentivo_launch-0.1.6-py3-none-any.whl
npm install ./licentivo-launch-0.1.6.tgz
dotnet add YOUR_PROJECT package Licentivo.Launch --version 0.1.6 --source YOUR_LOCAL_FEED
gem install --local ./licentivo-launch-0.1.6-x64-mingw-ucrt.gem

Java はクラスパス上で Launch JAR のみを使用し、POM に公式 SDK 依存関係はありません。オフラインの Go 利用者はモジュール ZIP を展開し、github.com/spf86/licentivo-launch-sdk にローカルの require/replace を使用できます。オフラインの Rust 利用者は crate またはソース ZIP を展開し、ローカルの licentivo-launch パス依存関係を追加できます。公式 SDK パッケージやチェックアウトは不要です。

C/C++ ではネイティブインストール ZIP を展開し、そのプレフィックスを CMake に追加して次を使用します:

find_package(LicentivoLaunch CONFIG REQUIRED)
add_executable(myapp main.c)
licentivo_launch_link(myapp)
# C++17 target: licentivo_launch_link(myapp CXX)

Launch は自身の SDK、推移的ライブラリ、同梱 Windows DLL を解決します。Rust の build.rs は組み込み C コアをコンパイルし、同梱 DLL を Cargo 実行ファイルの隣にコピーします。Ruby のプラットフォーム gem は非公開のネイティブコアとランタイムライブラリを含み、ソース gem はコアを自動コンパイルします。

通常の言語ツールチェーンと一般的な依存関係は引き続き必要です。pip は cryptography、NuGet は BouncyCastle.Cryptography、Cargo は通常の Rust crate を解決します。ネイティブアーカイブは Windows amd64 GNU と Linux amd64 に対応します。Windows 配布物には curl が含まれます。他の OS では完全なソースと C11 コンパイラ、通常の OS 用 curl/OpenSSL 開発ライブラリを使用します。SDK 0.11.6 の Windows ネイティブコアには GNU/MinGW が必要です。

アプリを初期化

Launch で既存のソフトウェアを選択します。現在の事業者 URL、既存のプラン/製品マッピング、公式署名公開鍵を自動取得し、入力済みの接続関数を提供します。この関数をアプリにコピーしてください。内部 ID の手入力や設定ファイルの生成は不要です。サーバー起動には引き続き非公開の config.yaml を使用し、これはアプリに同梱されません。

launchclient.Connect、Python Application.connect、C# Application.Connect、Node Application.connect などのパッケージエントリーポイントを使用します。組み込みファクトリーが SDK を作成・管理します。カスタムファクトリーは任意のテスト/連携フックであり、インストール手順ではありません。正確な API は各パッケージの README とサンプルに記載されています。

Launch はアカウントログイン、範囲限定の認証情報、上限付きの保留再試行、復元を処理します。組み込み SDK は署名を検証し、保護された各操作を認可します。通常終了、ログアウト、デバイス解放は別々です。Web アプリは信頼できるバックエンドで権限をチェックし、Node/Electron コードはメインまたはサーバープロセスに配置します。

手動開発手順は引き続き manual-integration.md と各言語の README にあります。管理画面の AI 連携ページは同じ直接初期化フローの英語の指示を生成します。パスワード、管理キー、ランタイムの顧客/デバイス認証情報を除外し、AI サービスは呼び出しません。AI 連携を参照してください。

メンテナーとして配布物をビルド

組み込み SDK を更新するメンテナーのみ、レビュー済みの上流ソースが必要です。利用者はこのセクションを省略します。

./scripts/prepare-examples.ps1 -Source 'C:\path\to\reviewed-sdk\sdk'
./scripts/build-integration-packages.ps1 -Output artifacts/NEW_DIRECTORY -BuildRustCrate -BuildNative -CurlRoot PATH_TO_CURL -CCompiler PATH_TO_GCC

必要に応じて -Python、-DotNet、-JavaHome、-Ruby、-Cargo、-CMake でツールパスを指定します。ビルダーは上流マニフェストを検証し、prepare-managed-sdk.mjs がソースを組み込み、ソース/コピー先の SHA-256 値を sdk/managed-sdk-manifest.json に記録します。必要に応じてモジュールの場所/インポートは変更されますが、暗号検証はレビュー済み実装のままです。各組み込みコピーには MIT ライセンスと通知が付属します。

各ビルドは言語ごとの成果物、ソースアーカイブ、統合ソースバンドル、一覧、チェックサムを含む新しいディレクトリを作成します。-SourceOnly は明示的にソース成果物を出力します。スキップされた対象はテスト済みバイナリリリースではありません。統合バンドルは examples/vendor を必要とせず、パッケージ、サンプル、文書、テストのパスを保持します。

インストールと動作を検証

scripts/test-managed-installations.ps1 は新規の利用者プロジェクトに配布物をインストールします。別途の公式 SDK パッケージ、SDK ソースパス、コピーしたアダプター、手動 SDK リンク設定なしで 9 対象すべてを検証します。エスケープされた公開データを含む、生成された正確な直接接続スニペットをコンパイルして実行し、configuration_files_required: false を報告します。レポートはランタイムスイートとは別です。

scripts/test-integration-packages.ps1 はライフサイクル回帰とローカル署名された実 SDK フィクスチャを実行します。ツールパスと設定済みのネイティブテストビルドを指定してください:

./scripts/test-integration-packages.ps1 -Python python -DotNet dotnet -JavaHome $env:JAVA_HOME -Ruby ruby -Cargo cargo -NativeBuildDirectory .cache/launch-native-build

リポジトリのソースビルドは通常の OS ネイティブ依存関係を使用します。Windows のメンテナーは LICENTIVO_CURL_ROOT を指定できます。これはソースビルドのツール設定であり、別途 SDK をインストールするものではありません。異なる Rust/C++ MinGW インストールを使用する場合、-NativeRuntimeDirectories は C++ DLL ディレクトリをネイティブチェックに限定します。前提条件が欠けると対象のチェックは失敗します。all_nine_passed には 9 件すべての成功が必要です。

ストレージと受け入れ確認

セッションのデフォルトはメモリです。ログインを記憶するには保護されたストアが必要です。AES-GCM ストアには OS の保管庫から取得する 32 バイトの鍵が必要で、暗号文の隣に保存してはいけません。パスワードは永続化されません。Go、Python、C#、ネイティブ C/C++ は Windows の現在のユーザーの DPAPI を提供し、Java、Node、Rust、Ruby は呼び出し元が管理する鍵を使う暗号化ストアを提供します。

SDK のデバイスファイルは上流の形式を保持します。セッションの暗号化はすべての SDK ファイルを暗号化するものではありません。アカウント/製品/環境単位のキャッシュディレクトリを制限し、インストーラー、ログ、バージョン管理から除外してください。ID/設定の変更時に別アカウントのキャッシュを再利用することはできません。

明示的なセッション/権利拒否時にオフラインへフォールバックすることはできません。通信障害または HTTP 5xx の場合に限り、暗号学的に検証済みの既存許可を署名済みポリシーの範囲内で使用できます。初回アクティベーション、フローティング席、オフラインを禁止するポリシーは引き続き接続が必要です。

ローカルレポートは実際の決済、発行、外部アクティベーションを証明しません。その環境は延期されています。acceptance.md を参照してください。レジストリ公開と非 Windows リリースの適格性確認には別の作業と証拠が必要です。