4

私はクライアント用のデスクトップソフトウェアを開発していますが、私はUIを考えていました.HTML5 + JSのような標準的なWeb技術を使用し、Chrome/Firefoxのような現代的なブラウザのヘッドレス版を単にパッケージ化する予定でしたソフトウェア。たとえば、境界線/メニュー/タブ/ショートカット/プロファイルなどがないブラウザのページビューア/レンダリングエンジン部分だけです。これをプラットフォームに依存しない方法で実現する最も簡単な方法は何ですか?私はMozillaにPrism/Chromelessのようなプロジェクトがあったことは知っていますが、1年以上で更新されていません。ヘッドレスブラウザのパッケージに最適な方法は?

+1

あなたは[Operaウィジェット](http://dev.opera.com/articles/view/the-opera-widgets-runtime-for-を見てきましたデスクトップ/)? – c69

+0

プラットフォームに依存しない方法は? Linux、OSX、Windows?もっと? –

+0

OSX、Windows。 – pathikrit

答えて

0

あなたはAdobe AIRを見たことがありますか?

+3

私は個人的にアドビ製品を気に入らない - 彼らは高価なIDEを持っていることが多く、将来のリリース/サポートの保証はない。これは、よりオープンなヘッドレスブラウザを好む理由です。しかし。はい、良い提案。 – pathikrit

+0

AirはWebKitブラウザコントロールを提供し、Flexは無料です。 –

1

MozillaのXUL言語について考えましたか?これは、Mozillaプロジェクトでユーザインタフェースを構築するために使用されるXML言語です。これは、スタンドアロンのMozilla Xulrunnerのgeckoエンジンによってレンダリングされます。このMozilla Xulrunnerは、XMLとJavaScriptをパッケージ化して実行可能パッケージにすることができます。

0

私はあなたの場合はAroraに行くと思います。

これはWebkitをベースにしているので、印象的な数のプラットフォームで動作し、HTMLとJavascriptに準拠しています。これは、2010年以来維持されていません。 (Apples Safariはどれがビルドされているのですか?)また、マイナーな問題は恐らくあなたが最初から多かれ少なかれあなたのアプリケーションを開発しているので、回避することができます。あなたのようなアプローチをとっているのは、バンドルされたブラウザを将来的に何かに置き換えることができます。

またはQtを使用してください。これは非常にクロスプラットフォームであり、also embed Webkitです。

0

私はこの目的のためにWebKitを使用しています(Windows用のBrent Fulgham's Cairo port of WebKitを使用して、CocoaのシステムWebViewコントロールに依存しています)。

webkit.orgのWebKitプロジェクトには、そのポート(およびQtとGTK +など)が含まれています。

1

サイズは問題ありません。http://www.appcelerator.com/
これはほぼすべてのプラットフォームで動作します。それがWunderlistを構築するために使うものです。 http://www.6wunderkinder.com/wunderlist/
サイズが気になる場合は、単純なラッパーを作成して、コントロールやツールバーを使わずにユーザーの優先ブラウザを起動することができます。

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(); 
} 

このウィンドウ枠での作業の例です! Look like this! ブラウザと同様に動作します。

+0

これは私が探していたものです。しかし、ブラウザはどのように現代的ですか? HTML5をサポートし、現代のChromeやFirefoxのインスタンスと同じように実行したいと考えています。 – pathikrit

+0

Qt 4.8.0では、統合QtWebKitのバージョンは534.34です! Apple Safari v5.0.xまたはGoogle Chromeバージョン12の安定版へのマッピングです。 Acid3テストでは100点です。 –

0

私はAdobe AIRを推奨します。私はあなたがアドビ製品とその高価なIDEが気に入らないと言いました。しかし、AIRは無料であり、適切と思われるIDEを使用することができます(AptanaはEclipseの上に構築するのがよい選択です)。

私はAdobe AIRで音楽プレーヤーを作っています。それは1年ほど前のことで、その後はAdobe AIR 3をリリースしています。全機能リストは非常に長いですが、要するに、通常のブラウザのもの(JS、Flexなど)とネイティブなものの両方をサポートしています。たとえば、コンピュータ上のファイルを参照したり、PDFを表示したりすることができます。試してみる価値がある。

0

1つのブラウザである必要がありますか?ウィンドウズ上でOSXとIEのWebkitの使用を検討してください。次に、小さなインタフェースを持つ小さなラッパーを作ることができます。利点は、独自のブラウザをパッケージ化する必要はなく、オペレーティングシステムによって提供されるものを使用して、プログラムが小さくなることです。

+0

ソフトウェアと一緒にこれらのパッケージを削除するにはどうすればよいですか? – pathikrit

関連する問題