This plugin only works on tauri v2, if you need the v1 plugin, feel free to submit a PR!
Support for checking and requesting macos system permissions.
iShot_2025-03-20_12.48.49.mp4
cargo add tauri-plugin-macos-permissionsYou can install the JavaScript Guest bindings using your preferred JavaScript package manager:
pnpm add tauri-plugin-macos-permissions-apisrc-tauri/src/lib.rs
pub fn run() { tauri::Builder::default() + .plugin(tauri_plugin_macos_permissions::init()) .run(tauri::generate_context!()) .expect("error while running tauri application"); }src-tauri/capabilities/default.json
{ ... "permissions": [ ... + "macos-permissions:default" ] }If you need to access the microphone or camera permissions, please update src-tauri/Info.plist:
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> <plist version="1.0"> <dict> ... + <key>NSMicrophoneUsageDescription</key> + <string>Describe why your app needs to use microphone permission</string> + <key>NSCameraUsageDescription</key> + <string>Describe why your app needs to use camera permissions</string> </dict> </plist>Afterwards all the plugin's APIs are available through the JavaScript guest bindings:
import { checkAccessibilityPermission } from "tauri-plugin-macos-permissions-api"; const authorized = await checkAccessibilityPermission(); console.log(authorized); // true| Method | Description |
|---|---|
checkAccessibilityPermission | Check accessibility permission. |
requestAccessibilityPermission | Request accessibility permission. |
checkFullDiskAccessPermission | Check full disk access permission. |
requestFullDiskAccessPermission | Request full disk access permission. |
checkScreenRecordingPermission | Check screen recording permission. |
requestScreenRecordingPermission | Request screen recording permission. |
checkMicrophonePermission | Check microphone permission. |
requestMicrophonePermission | Request microphone permission. |
checkCameraPermission | Check camera permission. |
requestCameraPermission | Request camera permission. |
checkInputMonitoringPermission | Check input monitoring permission. |
requestInputMonitoringPermission | Request input monitoring permission. |
git clone https://github.com/ayangweb/tauri-plugin-macos-permissions.gitpnpm install pnpm build cd examples/tauri-app pnpm install pnpm tauri dev-
Use macos-accessibility-client to check and request accessibility permission.
-
Use FullDiskAccess to check full disk access permission.
-
Use objc2 to check and request microphone or camera permissions.