4

我正在为客户端开发桌面软件,我正在考虑 UI,我将使用 HTML5+JS 等标准 Web 技术,并计划简单地将我的软件打包到 Chrome/Firefox 等现代浏览器的无头版本中。例如,它只是浏览器的页面查看器/渲染引擎部分,没有边框/菜单/选项卡/快捷方式/配置文件等。以独立于平台的方式完成此任务的最简单方法是什么。我知道 Mozilla 有像Prism / Chromeless这样的项目,但它们已经一年多没有更新了。

4

9 回答 9

1

你考虑过 Mozilla 的 XUL 语言吗?它是 Mozilla 项目中用于构建用户界面的 XML 语言。它是由他们的壁虎引擎在独立的 Mozilla Xulrunner 中呈现的,它可以与您的 XML 和 javascript 一起打包到一个可执行包中。

于 2012-02-22T00:10:53.023 回答
1

如果尺寸不是问题,您可以使用来自http://www.appcelerator.com/
的钛金属 它几乎可以在每个平台上运行。这就是他们用来建立奇妙清单的东西。http://www.6wunderkinder.com/wunderlist/
如果您关心大小,您可以构建一个简单的包装器,它可以启动用户首选的浏览器,而无需任何控件和工具栏。

于 2012-02-23T18:32:03.787 回答
1

QtWebkit 应该是一个合理的选择。您可以使用 Qt SDK 或 QtCreator 制作一个简单的应用程序。您可以将 HTML/CSS/JS 嵌入到 Qt 资源文件中的应用程序中。请检查以下源代码:

#include <QtGui/QApplication>
#include <QWebView>
#include <QNetworkProxy>

class MainWin : public QWebView
{
public:
    explicit MainWin(QWidget * parent = 0) {
        m_network = new QNetworkAccessManager(this);
        // Setup the network proxy when required!
        //m_network->setProxy(QNetworkProxy(QNetworkProxy::HttpProxy, "10.1.1.80", 80));
        page()->setNetworkAccessManager(m_network);

        // You can use the internal HTML/Javascrip/CSS by 
        // specify qrc:// URLs refer to resources. See resource.qrc
        QUrl startURL = QUrl("http://www.google.com");

        // Load web content now!
        setUrl(startURL);
    }
private:
    QNetworkAccessManager * m_network;
};

int main(int argc, char *argv[])
{
    QApplication a(argc, argv);
    MainWin w;
    w.show();

    return a.exec();
}

这是一个带有窗框的工作示例! 看起来像这样! 它就像浏览器一样工作。

于 2012-02-24T07:11:15.843 回答
0

你看过 Adob​​e AIR 吗?

于 2012-02-10T12:18:51.307 回答
0

在你的情况下,我想我会选择Arora。它自 2010 年以来一直没有维护,但假设它按原样运行稳定,它有一些很棒的优点:

它可以在大量平台上运行,并且具有良好的 HTML 和 Javascript 合规性,因为它基于 Webkit。(Apples Safari 是基于它构建的。)此外,任何小问题都可能得到解决,因为您应该或多或少地从头开始开发您的应用程序。采用像您这样的方法的好处还在于,如果适合您,您将来可以很容易地用其他东西替换捆绑的浏览器。

或者使用Qt,非常跨平台,也可以嵌入Webkit

于 2012-02-22T12:29:15.647 回答
0

我过去曾为此目的使用过 WebKit(依赖于 Cocoa 中的系统 WebView 控件,并使用Brent Fulgham 的适用于 Windows 的 WebKit 的 Cairo 端口)。

webkit.org 上的 WebKit 项目包括该端口(以及 Qt 和 GTK+ 以及许多其他端口)。

于 2012-02-23T11:24:27.070 回答
0

我建议使用 Adob​​e AIR。我看到您提到您不喜欢 Adob​​e 产品及其昂贵的 IDE。但是,AIR 是免费的,您可以使用任何您认为合适的 IDE(Aptana是构建在 Eclipse 之上的不错选择)。

我用 Adob​​e AIR 做了一个音乐播放器。那是大约一年前,从那时起他们发布了Adob​​e AIR 3。完整的功能列表很长,但简而言之,它支持常见的浏览器内容(JS、Flex 等)和一些原生内容。例如,您可以浏览计算机上的文件或显示 PDF。很值得一试。

于 2012-02-24T08:20:19.317 回答
0

必须是一个浏览器吗?考虑在 OSX 上使用 webkit,在 Windows 上使用 IE。然后你可以制作一个带有小接口的小包装器。好处是您不必打包自己的浏览器,而是使用操作系统提供的内容,从而使程序更小。

于 2012-02-24T08:30:59.443 回答
0

这些天电子是最好的:http: //electron.atom.io/

于 2016-08-09T13:51:36.470 回答