tauri.conf.json に定義されたアプリケーションのバージョン番号(version フィールド)を取得する方法を解説します。
「設定画面」や「バージョン情報」ダイアログでの表示に利用されます。
前提条件
@tauri-apps/api パッケージが必要です(Tauri v2 プロジェクト作成時に通常はインストールされています)。
1. フロントエンドから作成する (TypeScript)
@tauri-apps/api/app パッケージの getVersion() 関数を使用します。これは非同期関数として提供されています。
import { getVersion, getName } from '@tauri-apps/api/app';
async function showAppInfo() {
try {
const appName = await getName();
const appVersion = await getVersion();
console.log(`App Name: ${appName}`);
console.log(`Version: ${appVersion}`);
// 例: "1.0.0"
} catch (error) {
console.error(error);
}
}
showAppInfo();
2. バックエンドから作成する (Rust)
Rust 側(バックエンド)でも、AppHandle を通じてアプリケーションのパッケージ情報を取得できます。
Rust 実装
use tauri::command;
#[command]
fn get_app_version(app: tauri::AppHandle) -> String {
// package_info() からバージョン情報を取得
app.package_info().version.to_string()
}
#[cfg_attr(mobile, tauri::mobile_entry_point)]
pub fn run() {
tauri::Builder::default()
.invoke_handler(tauri::generate_handler![get_app_version])
.run(tauri::generate_context!())
.expect("error while running tauri application");
}
フロントエンドからの呼び出し
import { invoke } from '@tauri-apps/api/core';
invoke<string>('get_app_version')
.then(version => console.log(`Version from Rust: ${version}`))
.catch(console.error);