Spark 就支援推送,所以 macOS 應該是有對應的 API 的,只是開發者沒有好好支援罷了。
不過你說的微博的推送,倒是可以在「系統偏好設定」裡面找到「網際網路賬戶」新增微博就可以收到通知了。
至於 QQ 等軟體一定要開啟才能接受訊息的話,其實這點上 iOS 跟 macOS 還是有所區別的,在 Mac 上你的 Dock 欄上如果沒有開啟 QQ,那麼 QQ 就沒有在後臺執行,是處於完全的關閉狀態,所以就不會收到推送通知。並且 Mac 跟 iOS 不同,是一個真正的多工作業系統,所以原本就可以實現開啟多個任務同時進行工作。要是有需要 QQ 的時候就開啟;要是我們不希望收到 QQ 通知的時候就關閉,不受到通知的干擾,非常符合我們的使用習慣。
但是 iOS 上不行啊,因為 iOS 本質上是一個偽多工系統,在後臺的 app 其實都處於一個掛起/凍結的狀態,所以他們的推送就只能靠 Apple Push Notification service (APNs),除非我們在「設定」-「通知」裡面關閉對於某些軟體的通知,那麼這時候就相關於禁用了對應軟體的 APNs,雲端就不會講訊息推送到我們的手機上。
總的來說,還是因為兩個系統多工的性質以及推送邏輯不同,所以軟體對於後臺訊息推送的支援也有所不同,但是實際上 macOS 也是支援後臺訊息推送的。
Spark 就支援推送,所以 macOS 應該是有對應的 API 的,只是開發者沒有好好支援罷了。
不過你說的微博的推送,倒是可以在「系統偏好設定」裡面找到「網際網路賬戶」新增微博就可以收到通知了。
至於 QQ 等軟體一定要開啟才能接受訊息的話,其實這點上 iOS 跟 macOS 還是有所區別的,在 Mac 上你的 Dock 欄上如果沒有開啟 QQ,那麼 QQ 就沒有在後臺執行,是處於完全的關閉狀態,所以就不會收到推送通知。並且 Mac 跟 iOS 不同,是一個真正的多工作業系統,所以原本就可以實現開啟多個任務同時進行工作。要是有需要 QQ 的時候就開啟;要是我們不希望收到 QQ 通知的時候就關閉,不受到通知的干擾,非常符合我們的使用習慣。
但是 iOS 上不行啊,因為 iOS 本質上是一個偽多工系統,在後臺的 app 其實都處於一個掛起/凍結的狀態,所以他們的推送就只能靠 Apple Push Notification service (APNs),除非我們在「設定」-「通知」裡面關閉對於某些軟體的通知,那麼這時候就相關於禁用了對應軟體的 APNs,雲端就不會講訊息推送到我們的手機上。
總的來說,還是因為兩個系統多工的性質以及推送邏輯不同,所以軟體對於後臺訊息推送的支援也有所不同,但是實際上 macOS 也是支援後臺訊息推送的。