类
Gio通知
自:2.40
描述 [src]
final class Gio.Notification : GObject.Object
{
/* No available fields */
}
GNotification
是一种机制,用于创建通知以显示给用户——通常在由桌面环境 shell 展示的弹出式通知中。
GNotification
和其他类似 API 之间的主要区别是,在桌面环境支持下,通过 GNotification
发送的通知会在应用程序退出后,甚至在重启系统后仍然存在。
由于用户可以在应用程序未运行时单击通知,因此使用 GNotification
的应用程序应该能够通过使用 GApplication
以 D-Bus 服务形式启动。
为了使 GNotification
正常工作,该应用程序必须已安装 .desktop
文件。比如
[Desktop Entry]
Name=Test Application
Comment=Description of what Test Application does
Exec=gnome-test-application
Icon=org.gnome.TestApplication
Terminal=false
Type=Application
Categories=GNOME;GTK;TestApplication Category;
StartupNotify=true
DBusActivatable=true
X-GNOME-UsesNotifications=true
X-GNOME-UsesNotifications
键向 GNOME 控制中心指示该应用程序使用通知,因此它可以列在控制中心的“通知”面板中。
.desktop
文件必须命名为 org.gnome.TestApplication.desktop
,其中 org.gnome.TestApplication
是传递给 g_application_new()
的 ID。
用户与通知(默认操作或按钮)的交互必须与应用程序上的操作(即 app.
操作)相关联。无法通过通知本身路由用户交互,这是因为如果因通知被单击而导致自动启动应用程序,则对象将不存在。
可以使用 g_application_send_notification()
发送通知。
自 2.40 起提供
实例方法
g_notification_add_button
向 notification
添加一个按钮,在单击时会激活 detailed_action
中的操作。该操作必须是应用程序级操作(以 “app.” 开头)。如果 detailed_action
包含一个目标,则该操作将以该目标作为其参数被激活。
自:2.40
g_notification_add_button_with_target
向 notification
添加一个按钮,在单击时会激活 action
。action
必须是应用程序级操作(必须以 “app.” 开头)。
自:2.40
g_notification_add_button_with_target_value
向 notification
添加一个按钮,在单击时会激活 action
。action
必须是应用程序级操作(必须以 “app.” 开头)。
自:2.40
g_notification_set_category
将 notification
的类型设置为 category
。类别有一个主类型,如 email
、im
或 device
,并且可以有一个由 .
分隔的细节,例如 im.received
或 email.arrived
。设置类别有助于通知服务器选择正确的反馈给用户。
自:2.70
g_notification_set_default_action_and_target
将 notification
的默认操作设置为 action
。单击通知时会激活此操作。该操作必定是一个应用程序范围的操作(必须以 “app.” 开头)。
自:2.40
g_notification_set_default_action_and_target_value
将 notification
的默认操作设置为 action
。单击通知时会激活此操作。该操作必定是一个应用程序范围的操作(以 “app.” 开头)。
自:2.40
信号
从 GObject (1) 继承的信号
GObject::notify
当对象的某个属性通过 g_object_set_property()、g_object_set() 等函数设置值时,将在该对象上触发 notify 信号。