fruitriin / taskbar

aim to make taskbar for use mac
13 stars 2 forks source link

通知バッヂ需要 #5

Open fruitriin opened 1 year ago

fruitriin commented 1 year ago

需要があるとかないとか(ないかも

┆Issue is synchronized with this Trello card by Unito

fruitriin commented 1 year ago

Mac OSでは、他のアプリケーションについている通知バッジの状況を取得することは可能です。Mac OSでは通知センターと呼ばれる機能があり、アプリケーションからの通知を一元管理するための機能です。

アプリケーションが通知センターに通知を送信すると、通知バッジが表示されます。そのため、特定のアプリケーションの通知バッジの状況を取得するには、通知センターから情報を取得する必要があります。

以下は、Swiftで通知センターから通知バッジの状況を取得する方法の例です:

import Foundation
import NotificationCenter

// 通知センターのインスタンスを取得
let notificationCenter = NSUserNotificationCenter.default

// 通知センターから通知の配列を取得
let deliveredNotifications = notificationCenter.deliveredNotifications

// 特定のアプリケーションの通知バッジの状況を取得する
for notification in deliveredNotifications {
    if notification.identifier == "your_app_identifier" {
        let badgeNumber = notification.applicationBadgeNumber
        print("通知バッジの数: \(badgeNumber)")
    }
}

このコードでは、deliveredNotificationsを使用して通知センターから配信された通知のリストを取得し、特定のアプリケーションの通知バッジの状況を取得しています。your_app_identifierの部分は、対象のアプリケーションのバンドル識別子に置き換えてください。

ただし、注意点として、ユーザーが通知を許可しているアプリケーションのみが通知センターに表示されます。許可されていないアプリケーションの通知バッジの状況を取得することはできません。