尊重/阅读Gnome(Linux)中的“首选应用程序”设置
问题描述:
如何找到用户的“首选Web浏览器”,如果他们使用的是Gnome桌面环境? (我想打开一个网页,我不需要知道用户喜欢哪个浏览器。)尊重/阅读Gnome(Linux)中的“首选应用程序”设置
一些背景: 我想用我的Java应用程序打开浏览器窗口(我的主页)。
- 如果Java版本是1.6+,请使用Desktop.browse(url);
- 否则,使用BareBonesBrowserLaunch.openURL(url) - 这意味着检查环境,开始调用Runtime.getRuntime()浏览器的exec()
方法2名在Windows上运行得很好。并在Linux上打开浏览器。但是,它是它发现的第一个浏览器(在我的情况下,首先查找Firefox)。在Gnome桌面环境中(例如Ubuntu Linux默认),您可以为电子邮件,www浏览等设置您的“首选应用程序”;我相信这个信息是的地方。我怎样才能找出哪个是用户首选的浏览器?
换句话说:Gnome在哪里存储“首选浏览器”设置?
答
“默认浏览器”设置为~/.gconf/desktop/gnome/url-handlers/http/%gconf.xml
这里是我的:
<?xml version="1.0"?>
<gconf>
<entry name="command" mtime="1243616896" type="string">
<stringvalue>opera %s</stringvalue>
</entry>
</gconf>
的<stringvalue/>
是我一直在寻找的命令。
(发现了这一点经过一段时间 - 忘了发布问题。)
答
考虑使用gnome-open
。
我在Gnome上使用它,在KDE上使用它kfmclient
。
+0
这比我发现的要干净得多(而且比较简单)非常感谢。 – Piskvor 2009-05-30 12:01:21
这只是调用`gnome-open` /`kfmclient` /`exo-open`/etc,这取决于可用的内容。如果`xdg-open`不存在,`$ BROWSER`是下一个要检查的。 – grawity 2010-02-18 14:28:26