きみたちは一度これを読んだほうがいい
Rust GUI の決定版! Tauri を使ってクロスプラットフォームなデスクトップアプリを作ろう
Chapter 03 Tauri の概要
https://zenn.dev/kumassy/books/6e518fe09a86b2/viewer/168468
より
アーキテクチャ
Tauri のアーキテクチャを図示すると、次のようになります
https://storage.googleapis.com/zenn-user-upload/e215aef57b0a-20220610.png
Core Process はアプリケーション全体のライフサイクル管理を行ったり、 OS のインターフェース(メニューや通知など)の操作、 WebView Process の管理などを行います。
Core Process のコードは Rust で記述されるので、標準ライブラリも crate.io で公開されているライブラリも利用できます。 Tauri は非同期ランタイムとして tokio を利用しているので、非同期 Rust も使えます! Rust のコードはアプリケーションのビルド時にネイティブコードにコンパイルされるので、高速に動作します
WebView Process は Web コンテンツのレンダリングを行うプロセスです。通常の Web ページと同様に、 index.html, JavaScript, CSS から構成されて、 wry にラップされた WebView で動作します。
Tauri の JavaScript API を利用することで、 Core Process と通信したり、ファイルシステムにアクセスしたり、通知を表示する、などの操作が可能です。
WebView Process から WebView のサンドボックスを超えていろいろな操作できてしまうとセキュリティ上問題になることがあります。そこで、 tauri では JavaScript API で利用する API を allowlist に明示的に記述する必要があります。 Electron では preload スクリプトによって Renderer Process に公開する API を制限できましたが、同様の仕組みは allowlist で実現できます。
Tauri でアプリケーションを作ると Electron とは違い、 Chromium と Node.js 実行環境をバンドルする必要がないので、アプリケーションのサイズを小さく保つことができます
Rust part15
■ このスレッドは過去ログ倉庫に格納されています
802デフォルトの名無しさん
2022/06/21(火) 10:12:25.82ID:D95D9dWE■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 【STARTO ENTERTAINMENT】timelesz猪俣周杜容疑者 なぜ釈放されない?軽傷の傷害事件では異例…10日間の勾留請求が認められる [Ailuropoda melanoleuca★]
- 【8割おじさん】新型コロナ猛威に「人との接触を8割減らす」と呼びかけたのは正しかったか…第一線で発信を担った専門家は反省を口に★2 [煮卵★]
- 【愛知・名古屋アジア大会】トラブル続発で…五輪やW杯の招致に影響必至「日本の信用低下に」「国際問題レベル」★2 [jinjin★]
- 「本業声優かと思ったら」文句なく上手くて”炎上しなかった”芸能人起用のアニメ映画 [muffin★]
- 【概算要求】高市内閣「内閣広報予算」10倍の72億円要求 動画に壮大なBGM 総理希望で広報官起用 [ぐれ★]
- 豚が覆いかぶさった状態で発見 農場で倒れていた22歳男性が死亡・鹿児島 [えりにゃん★]
- 💡☝🥺!
- 【高市ジャップ悲報】季節、終わる。 [667773354]
- 今、『じゃない方』がアツい。日本ファルコムの『イースじゃない方』が大人気に [882118878]
- (ヽ゜ん゜)「こっちは客だぞ!!金払ってんのに店側の作業させんのか!?」👈たまにいるけどこれ何? [152212454]
- 【悲報】神奈川県、千葉より被害少ないのに自衛隊に災害派遣要請
- 【ジャップ悲報】トー横キッズ、新宿駅で一般人を警棒で無差別にボコボコにして炎上 [939270813]