在C中调用新的NotifyOSD框架?

Kre*_*dns 2 c linux gtk ubuntu ubuntu-9.04

我想让我的GTK +应用程序使用Ubuntu中的新通知区域.我怎样才能做到这一点?一个例子如下所示:

http://www.iconocast.com/EB000000000000112/E3/News1_0.jpg

Bri*_*aro 8

我不是在Ubuntu盒子上,所以我不能写出任何例子.

但是Ubuntu的NotificationDevelopmentGuidelines页面有很多信息.

C,C#和Python中的示例.

Debain还有一个教程应该或多或少具有一些共性.

基本上,您将与NotifyOSD框架相结合,该框架利用了Free Desktop Foundations D-Bus消息传递系统.

对于开发,你需要libnotify(只有我能找到的在线文档)

如果您只想从命令行获得一些快速结果或在shell脚本中使用,您还可以使用notify-send命令.

用法:

notify-send [OPTION...] <SUMMARY> [BODY] 
Run Code Online (Sandbox Code Playgroud)

例:

notify-send Test "Totally gnarly message bro"
Run Code Online (Sandbox Code Playgroud)

或者您可以指定一个图标:

notify-send -i ../icon.jpg  Image "This is a sweet picture"
Run Code Online (Sandbox Code Playgroud)

还有很多其他选项,过期时间,紧急程度,类别.

Ubuntu没有严格遵守Notification规范,它们不尊重FSF定义的很多选项.如果有些东西不能与ubuntu的通知程序一起工作,你看到使用另一个通知程序系统,请不要感到惊讶.

一些其他资源:

  • Ubuntu的NotifyOSD维基页面.
  • ArsTechnica有一篇关于新通知系统的精彩文章.
  • 伟大的文章对一些Ubuntu的通知的实施缺陷.