私はクライアント用のデスクトップソフトウェアを開発していますが、私はUIを考えていました.HTML5 + JSのような標準的なWeb技術を使用し、Chrome/Firefoxのような現代的なブラウザのヘッドレス版を単にパッケージ化する予定でしたソフトウェア。たとえば、境界線/メニュー/タブ/ショートカット/プロファイルなどがないブラウザのページビューア/レンダリングエンジン部分だけです。これをプラットフォームに依存しない方法で実現する最も簡単な方法は何ですか?私はMozillaにPrism/Chromelessのようなプロジェクトがあったことは知っていますが、1年以上で更新されていません。ヘッドレスブラウザのパッケージに最適な方法は?
答えて
エレクトロンは、これらの日、このために最善である:http://electron.atom.io/
あなたはAdobe AIRを見たことがありますか?
私は個人的にアドビ製品を気に入らない - 彼らは高価なIDEを持っていることが多く、将来のリリース/サポートの保証はない。これは、よりオープンなヘッドレスブラウザを好む理由です。しかし。はい、良い提案。 – pathikrit
AirはWebKitブラウザコントロールを提供し、Flexは無料です。 –
MozillaのXUL言語について考えましたか?これは、Mozillaプロジェクトでユーザインタフェースを構築するために使用されるXML言語です。これは、スタンドアロンのMozilla Xulrunnerのgeckoエンジンによってレンダリングされます。このMozilla Xulrunnerは、XMLとJavaScriptをパッケージ化して実行可能パッケージにすることができます。
私はあなたの場合はAroraに行くと思います。
これはWebkitをベースにしているので、印象的な数のプラットフォームで動作し、HTMLとJavascriptに準拠しています。これは、2010年以来維持されていません。 (Apples Safariはどれがビルドされているのですか?)また、マイナーな問題は恐らくあなたが最初から多かれ少なかれあなたのアプリケーションを開発しているので、回避することができます。あなたのようなアプローチをとっているのは、バンドルされたブラウザを将来的に何かに置き換えることができます。
またはQtを使用してください。これは非常にクロスプラットフォームであり、also embed Webkitです。
私はこの目的のためにWebKitを使用しています(Windows用のBrent Fulgham's Cairo port of WebKitを使用して、CocoaのシステムWebViewコントロールに依存しています)。
webkit.orgのWebKitプロジェクトには、そのポート(およびQtとGTK +など)が含まれています。
サイズは問題ありません。http://www.appcelerator.com/
これはほぼすべてのプラットフォームで動作します。それがWunderlistを構築するために使うものです。 http://www.6wunderkinder.com/wunderlist/
サイズが気になる場合は、単純なラッパーを作成して、コントロールやツールバーを使わずにユーザーの優先ブラウザを起動することができます。
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();
}
このウィンドウ枠での作業の例です! ブラウザと同様に動作します。
これは私が探していたものです。しかし、ブラウザはどのように現代的ですか? HTML5をサポートし、現代のChromeやFirefoxのインスタンスと同じように実行したいと考えています。 – pathikrit
Qt 4.8.0では、統合QtWebKitのバージョンは534.34です! Apple Safari v5.0.xまたはGoogle Chromeバージョン12の安定版へのマッピングです。 Acid3テストでは100点です。 –
私はAdobe AIRを推奨します。私はあなたがアドビ製品とその高価なIDEが気に入らないと言いました。しかし、AIRは無料であり、適切と思われるIDEを使用することができます(AptanaはEclipseの上に構築するのがよい選択です)。
私はAdobe AIRで音楽プレーヤーを作っています。それは1年ほど前のことで、その後はAdobe AIR 3をリリースしています。全機能リストは非常に長いですが、要するに、通常のブラウザのもの(JS、Flexなど)とネイティブなものの両方をサポートしています。たとえば、コンピュータ上のファイルを参照したり、PDFを表示したりすることができます。試してみる価値がある。
1つのブラウザである必要がありますか?ウィンドウズ上でOSXとIEのWebkitの使用を検討してください。次に、小さなインタフェースを持つ小さなラッパーを作ることができます。利点は、独自のブラウザをパッケージ化する必要はなく、オペレーティングシステムによって提供されるものを使用して、プログラムが小さくなることです。
ソフトウェアと一緒にこれらのパッケージを削除するにはどうすればよいですか? – pathikrit
- 1. Androidイメージアプリの最適なパッケージ
- 2. シンプルなカレンダーに最適な方法は?
- 3. エンティティのローカライズに最適な方法は?
- 4. モバイルウェブサイトに最適な方法
- 5. 最適な方法
- 6. マルチスレッドに最適な方法は?
- 7. スプライト画像に最適な方法は?
- 8. ゲームのタイムイベントに最適な方法
- 9. ssisのインクリメンタルロードに最適な方法
- 10. Scalaアプリケーションのフィンガープリントに最適な方法
- 11. Visual Studioのコードアプリケーションに最適な方法
- 12. Webサービスのパフォーマンスモニタに最適な方法
- 13. NodeJSのurldecode(php)に最適な方法
- 14. Swiftのユーザーログインに最適な方法
- 15. NHibernateのクエリと最適なパフォーマンスの最適化方法
- 16. ログインに最適な方法ユーザーID
- 17. モバイルアプリケーション用に最適なSQL Azureパッケージは何ですか?
- 18. Railsの展開 - 最適な方法
- 19. JSPの最適な設計方法
- 20. Javaでの動的クラスとパッケージのロードに最適なアプローチ
- 21. pythonパッケージ:別のパッケージの最新バージョンに頼る方法
- 22. Android:ビューにデータを渡すのに最適な方法は?
- 23. link_to_functionのリファクタリングに最適なUJSの方法は何ですか?
- 24. iPhoneのapplicationDidReceiveMemoryWarningのデバッグに最適な方法は?
- 25. ウェブベースのファインアートスタートアップの試作に最適な方法は?
- 26. スイング - ビュー間のインタラクトに最適な方法は?
- 27. アンドロイド:ImageViewでの描画に最適な方法は?
- 28. PHPでの(クロスプラットフォーム)リアルタイムデータストリーミングに最適な方法は?
- 29. Capistrano - Gitでマージするのに最適な方法は?
- 30. プロセスの起動と監視に最適な方法は?
あなたは[Operaウィジェット](http://dev.opera.com/articles/view/the-opera-widgets-runtime-for-を見てきましたデスクトップ/)? – c69
プラットフォームに依存しない方法は? Linux、OSX、Windows?もっと? –
OSX、Windows。 – pathikrit