跳至主要內容

通知

傳送烤麵包式通知(簡短的自動過期作業系統視窗元素)給您的使用者。也可以搭配「通知」網路 API 使用。

tauri.conf.json 中的 build.withGlobalTauri 設為 true 時,也可以透過 window.__TAURI__.notification 存取此套件。

必須將 API 加入 tauri.conf.json 中的 tauri.allowlist.notification

{
"tauri": {
"allowlist": {
"notification": {
"all": true // enable all notification APIs
}
}
}
}

建議僅允許您使用的 API,以最佳化套件大小和安全性。

介面

選項

傳送通知的選項。

: 1.0.0

屬性

主體

選用 主體: 字串

選用通知主體。

定義於: notification.ts:38

圖示

選用 圖示: 字串

選用通知圖示。

特定平台

  • Windows:此功能必須安裝應用程式才能生效。

定義於: notification.ts:47

音效

選用 音效: 字串

選用通知音效。

特定平台

每個作業系統都有不同的音效名稱,因此您需要根據使用的作業系統有條件地指定適當的音效,「預設」代表預設的系統音效。如需音效清單,請參閱

  • Linux:可以是 https://0pointer.de/public/sound-naming-spec.html 中列出的音效之一

  • Windows:可以是 https://learn.microsoft.com/en-us/uwp/schemas/tiles/toastschema/element-audio 中列出的音效之一,但沒有前綴,例如,如果 ms-winsoundevent:Notification.Default,您將使用 Default,如果 ms-winsoundevent:Notification.Looping.Alarm2,您將使用 Alarm2。Windows 7 不受支援,如果提供了音效,它將播放預設音效,否則將保持靜音。

  • macOS:您可以在顯示通知時指定要播放的音效名稱。除了自訂音效檔案外,可以使用任何預設音效(在「系統偏好設定」>「聲音」中)。請務必將音效檔案複製到應用程式套件中(例如,YourApp.app/Contents/Resources),或下列其中一個位置

    • ~/Library/Sounds

    • /Library/Sounds

    • /Network/Library/Sounds

    • /System/Library/Sounds

      請參閱 NSSound 文件以取得更多資訊。

: 1.5.0

定義於: notification.ts:72

title

標題字串

通知標題。

定義於: notification.ts:36

類型別名

Permission

權限"granted" | "denied" | "default"

可能的權限值。

定義於: notification.ts:76

函式

isPermissionGranted

isPermissionGranted(): Promise<boolean>

檢查是否已授予發送通知的權限。

範例

import { isPermissionGranted } from '@tauri-apps/api/notification';
const permissionGranted = await isPermissionGranted();

: 1.0.0

傳回: Promise<boolean>

requestPermission

requestPermission(): Promise<Permission>

要求發送通知的權限。

範例

import { isPermissionGranted, requestPermission } from '@tauri-apps/api/notification';
let permissionGranted = await isPermissionGranted();
if (!permissionGranted) {
const permission = await requestPermission();
permissionGranted = permission === 'granted';
}

: 1.0.0

傳回: Promise<Permission>

一個承諾,解決使用者是否已授予權限。

sendNotification

sendNotification(options: string | Options): void

向使用者發送通知。

範例

import { isPermissionGranted, requestPermission, sendNotification } from '@tauri-apps/api/notification';
let permissionGranted = await isPermissionGranted();
if (!permissionGranted) {
const permission = await requestPermission();
permissionGranted = permission === 'granted';
}
if (permissionGranted) {
sendNotification('Tauri is awesome!');
sendNotification({ title: 'TAURI', body: 'Tauri is awesome!' });
}

: 1.0.0

參數

名稱類型
options字串 | 選項

傳回: