diff --git a/src-tauri/src/core/tray.rs b/src-tauri/src/core/tray.rs
index acf9142a7a1b28bfd8bc51c70c8f51eccbce586a..f91db98208eeb6325351ca203178fb7cdd7eb0a2 100644
--- a/src-tauri/src/core/tray.rs
+++ b/src-tauri/src/core/tray.rs
@@ -107,13 +107,16 @@ impl Tray {
         let system_proxy = verge.enable_system_proxy.as_ref().unwrap_or(&false);
         let tun_mode = verge.enable_tun_mode.as_ref().unwrap_or(&false);
 
-        let indication_icon = if *system_proxy {
-            include_bytes!("../../icons/tray-icon-activated.png").to_vec()
-        } else {
-            include_bytes!("../../icons/tray-icon.png").to_vec()
-        };
+        #[cfg(not(target_os = "macos"))]
+        {
+            let indication_icon = if *system_proxy {
+                include_bytes!("../../icons/tray-icon-activated.png").to_vec()
+            } else {
+                include_bytes!("../../icons/tray-icon.png").to_vec()
+            };
 
-        tray.set_icon(tauri::Icon::Raw(indication_icon))?;
+            let _ = tray.set_icon(tauri::Icon::Raw(indication_icon));
+        }
 
         let _ = tray.get_item("system_proxy").set_selected(*system_proxy);
         let _ = tray.get_item("tun_mode").set_selected(*tun_mode);