Notifications Swift&;NSUserNotification-没有横幅或警报,但会自动添加到通知列表中
我正在学习Swift,希望将一个简单的用户通知显示为测试。Notifications Swift&;NSUserNotification-没有横幅或警报,但会自动添加到通知列表中,notifications,swift,nsnotificationcenter,silent,nsusernotification,Notifications,Swift,Nsnotificationcenter,Silent,Nsusernotification,我正在学习Swift,希望将一个简单的用户通知显示为测试。 我的构建成功,但没有显示任何横幅,而是将通知以静默方式添加到通知列表中。我已确认“请勿打扰”已关闭,我在AppleScript中也尝试了同样的方法,成功地使用了一次NSUserNotificationAlertStyle和我应用程序的info.plist中的代码,我得到了一个成功的非静默警报(不是横幅)。 然而,这只发生过一次 我创建了一个新项目,有Swift文件,没有故事板。我的AppDelegate.swift包含 import C
我的构建成功,但没有显示任何横幅,而是将通知以静默方式添加到通知列表中。我已确认“请勿打扰”已关闭,我在AppleScript中也尝试了同样的方法,成功地使用了一次
NSUserNotificationAlertStyle
和我应用程序的info.plist中的代码,我得到了一个成功的非静默警报(不是横幅)。然而,这只发生过一次 我创建了一个新项目,有Swift文件,没有故事板。我的AppDelegate.swift包含
import Cocoa
class AppDelegate: NSObject, NSApplicationDelegate {
@IBOutlet weak var window: NSWindow!
func applicationDidFinishLaunching(aNotification: NSNotification?) {
var notification:NSUserNotification = NSUserNotification()
notification.title = "Title"
notification.subtitle = "Subtitle"
notification.informativeText = "Informative text"
notification.soundName = NSUserNotificationDefaultSoundName
notification.deliveryDate = NSDate(timeIntervalSinceNow: 5)
var notificationcenter:NSUserNotificationCenter = NSUserNotificationCenter.defaultUserNotificationCenter()
if let notificationCenter = NSUserNotificationCenter.defaultUserNotificationCenter() {
notificationcenter.scheduleNotification(notification)
}
}
func applicationWillTerminate(aNotification: NSNotification?) {
// Insert code here to tear down your application
}
}
而且我的info.plist不包含前面提到的NSUserNotificationAlertStyle
,因为我相信这对于横幅是不必要的
最后,是的,应用程序“test”(我将其命名为test)设置为显示横幅。
摘要:我的应用程序成功发出通知,这些通知将添加到通知列表中,但不会显示为横幅。
(我使用的是OS X Yosemite 10.10。我希望此问题与测试版无关)如果在发送通知时应用程序是前台/活动应用程序,则不会显示某些通知。有关更多信息,请参阅 例如,当您在iTunes中播放一首新歌时,您已经看到播放的是哪首歌,并且不需要显示横幅
请注意,您仍然可以在通过发送通知时收到通知(并检查
presented
),包括通过实现userNotificationCenter:shouldPresentNotification:
,覆盖表示行为,是的,我没有看到这一点!非常有帮助!