HTML5アプリケーションをデスクトップアプリケーションとして配布するためのソリューション?[閉まっている]


141

HTML5ベースのデスクトップアプリケーションを配布するためのいくつかのソリューションは何ですか?

HTML5アプリをWindows、OSX、Linuxのスタンドアロンデスクトップアプリケーションとして配布したいのですが。アプリのアイコンのショートカットをダブルクリックしてプログラムを実行できるようにしたいと思います。

ブラウザウィンドウをまったく表示せずに、自分のアプリだけを表示します。これは可能ですか?


4
Chrome +フルスクリーンは適切に機能します
PostMan

2
Windows上のChromeには、ツールメニューから[アプリケーションのショートカットを作成]オプションがあります。デスクトップにリンクが作成され、アドレスバーのない標準ウィンドウが開きます。
6502

3
ローカルファイルへのアクセスなど、ブラウザ内では通常は実行できないその他の要件はありますか?
Tiemen

76
この質問が建設的でないとマークされている理由を誰かが私に説明できますか?彼はプラットフォームがあるかどうか尋ねていますが、答えは客観的です:はい。そして、いくつかの可能性で「実装」される可能性があるので、なぜこのようにマークされているのか、本当に。
Francesco Belladonna 2013年

10
この質問は関連性があり、話題性があります。最近の記事clintberry.com/2013/html5-apps-desktop-2013に示されています。
Quested Aronssonによる2013年

回答:


75

2014年のHTML5アプリ

chrome / webkitによるフレーム

  • エレクトロン(旧アトムシェル)

    Electronは、HTML、CSS、JavaScriptを使用してクロスプラットフォームのデスクトップアプリケーションを構築するためにGitHubによって開発されたオープンソースライブラリです。Electronは、ChromiumとNode.jsを1つのランタイムに組み合わせることでこれを実現し、アプリはMac、Windows、およびLinux用にパッケージ化できます。(ソース

    githubの人々はこれを使って、コードエディターAtomをアプリとして提供しています。公式のアトムフォーラムには、ドキュメント化されたAPIとヘルプチャネルがあります。

  • Node-Webkit、最も最小限のアプローチ

    node-webkitは、Chromiumとnode.jsに基づくアプリランタイムです。node-webkitを使用して、ネイティブアプリをHTMLおよびJavaScriptで記述できます。また、Node.jsモジュールをDOMから直接呼び出すことができ、すべてのWebテクノロジーを使用してネイティブアプリケーションを作成する新しい方法が可能になります。

    Intelはこの背後にあります(?)。縁が非常に荒れていると聞いたことがあります。

  • Adobeのコードエディター(およびAdobe Edgeのベース)のサンドボックスであるブラケットシェル

    注:ブラケットシェルは、ブラケットプロジェクトで使用するためにのみ維持されます。他のプロジェクトのアプリシェルとして間違いなく成功した人もいますが、公式サポートは行っていません。また、アプリシェルを簡単に再利用できるようにするために多くの作業を行っていません。多くの人はnode-webkitのようなプロジェクトを使用する方が簡単だと思うでしょう。

    とreadmeは述べていますが、それを行った人はかなりたくさんいます。

フレームワーク+ツール

  • Adobe AIR、別の答えが示唆されています。

    Adobe®AIR®ランタイムにより、開発者は同じコードをWindowsおよびMac OSデスクトップ、iPhone、iPad、Kindle Fire、Nook Tablet、およびその他のAndroid™デバイスのネイティブアプリにパッケージ化でき、5億を超えるモバイルアプリストアに到達できますデバイス。

  • Senchaは、html5アプリの開発と配布を含むアプリ開発者向けのツールを販売する会社です。

非アクティブなアプローチ

  • Tide SDK2015-07-12、archive.orgにアーカイブ)、ベータ版、2015年7月12日廃止

    http://www.tidesdk.org/

  • MozillaのXULRunnerはあなたのためにトリックをするかもしれませんが、いくらかのオーバーヘッドを追加します。

  • app.jsは(https://github.com/rogerwang/node-webkit)[node-webkit]に追い越されたため2013年10月28日に終了しました。

    シンプルでありながら強力だからです。AppJSを使用すると、クロスプラットフォームのコーディングや、新しい言語やツールの学習について心配する必要はありません。あなたはすでにHTML、CSS、JavaScriptに精通しています。このスタックよりも優れたアプリケーション開発は何ですか?さらに、AppJSはChromiumをコアで使用しているため、最新のHTML 5 APIが機能します。したがって、アプリケーションが行うべきタスクに焦点を当てます。

  • Mozilla Prismは廃止されました、彼らのスラグラインは:

    デスクトップアプリケーションにWebアプリケーションを組み込む
    Prismは、ユーザーがブラウザからWebアプリケーションを分割して、デスクトップで直接実行できるアプリケーションです。


7
Mozilla Prismは現在非アクティブです
Harshith JV

8
Adobe Airを試してみてください。javascriptテンプレートソリューション(ハンドルバー、口ひげなど)の使用を計画している場合、それらのほとんどは、新しいfunction()javascript呼び出しに関連するセキュリティエラーのために機能しません。
James Parker

その非常に役立つヒントをありがとう!残念ながら、私は上記の例のいずれかをまだテストする機会がありませんでした。調査で集めただけです。
Samuel Herzog

アプリケーションをセキュリティサンドボックスよりも大きく実行できます。KendoUIテンプレートシステムにもその問題があり、それを克服することができました。どちらの方法でもAirからTitanium Desktopに切り替えましたが、WindowsのTDのWebkit実装にはフォーム要素(入力/ドロップダウン)に深刻な問題があるため、現在代替策を探しています)。
Vasco Costa

Sentenza Desktopで HTML5 / CSS3 / JS WebアプリケーションをMac OS Xアプリケーション(.app)にパッケージ化することを検討できます。APIライブラリも利用できます。フレームワークは必要ありません(Adobe AirやTideSDKなど)。Mac App Storeの展開がサポートされています。
Beny

15

NodejsとChromiumを使用するAppJSを使用して、デスクトップ用のhtml5アプリを作成できます。チェックアウト:http : //appjs.com Githubリンク:https : //github.com/appjs/appjs


1
同様のものがnode-webkitで、v8スナップショットを使用してJavaScriptをコンパイルするなど、いくつかの優れた機能があります。リンク
pillar15

廃止の通知AppJSプロジェクトは数年間活発に開発されていません。代わりにNW.jsまたはElectronをチェックしてください。
アーロンフランケ2017

10

MozillaのXULRunnerをご覧になることをお勧めします。10000フィートのレベルでは、FireFoxブラウザーはXULRunnerアプリケーションです(明らかに非常に高度なものですが...)。しかし、XULRunnerを使用すると、JavascriptとXMLを使用してアプリケーションを作成できます。ブラウザーウィンドウはそれらのコンポーネントの1つであるため、基本的なウィンドウを表示すると、たいていのことはほぼ何でも実行できます。

また、アプリケーションの洗練度に応じて、基本的にHTMLランタイムでもあるいくつかの「ウィジェット」フレームワーク(Macのダッシュボード、Yahooウィジェット、Windowsガジェットなど)もあります。


2
XULRunnerを確認することを強くお勧めします。あなたが説明することについては、それは理想的であり、十分に文書化されています。Chromeも同様に機能すると思いますが、まだ調べていません。
Jared Farrish

XULランナーは素晴らしいフレームワークであり、非常に柔軟ですが、あなたが言うように十分に文書化されていません。初心者は物事を始めるためにたくさん苦しむ必要があります。
esafwan 2012年

10

Titaniumをぜひチェックしてください。ちょうど今日、機能的なHTML5アプリを使用しました。いくつかの小さな変更を加えると、それをTitaniumにドロップして、Mac、Windows、およびLinux用にパッケージ化することができました。

また、アプリで「サーバー側」の処理が必要な場合は、PHP、Python、Rubyもサポートします。


あらかじめパッケージ化されたソリューションが必要な場合は、これが答えだと思います。
2011年

15
Titaniumでの私の経験はひどいものでした-外見は素晴らしく見えますが、バグが詰まっており、すぐに使用するには地獄になります。オススメできません。
ダミアン

3
これも良い選択だと思いましたが、1)Linuxで単純な「create-new-project / run」を実行できませんでした(Ubuntu 11.10)2)Titanium Desktopはコミュニティ駆動型プロジェクトに変換されています(つまり、誰かがコードを取得しない限り、コードは死にます)
Luis Lobo Borobia

4
私はこれが古いことを知っていますが、私はこの答えを読んだだけで、Titanium Desktopが死んでいることがわかるまでしばらく時間を費やしました。したがって、もはやオプションではありません。ところで、githubが彼のWindows用ツールで行ったように、c#とchromiumが埋め込まれたものを作成することを考えています
NicoGranelli

6
TitaniumデスクトップがTideSDKになったtidesdk.org
Peacemoon

5

Chromeはプリズムの機能を実行できます参照-ツール->アプリケーションショートカットの作成


知らなかった... +1
arg20

残念ながら、Macではアプリケーションのショートカットを使用できません。
シェーンホロウェイ


3

Adobe AIRは、デスクトップアプリケーションを提供しながら、主にHTML、CSS、JavaScriptで作業できるようにすることを目的としています。(注意:実際には使用していません。)


1
AIRの統合ブラウザーは古く、更新されることはないため、お勧めしません(他のプロジェクトで使用しました)
simion314 '17

@ simion314:AIRは進行中のプロジェクトなので、その中のブラウザーは更新されないというのはなぜですか。
TJクラウダー2014年

forums.adobe.com/message/6177332を参照してください アドビはAIRのモバイル部分でより多く機能し、モバイルではStageWebViewを使用し、AIRのWebkitエンジンを更新しません。stagewebviewは、ものの表示のみに制限されます。複雑なjavascriptライブラリまたはckeditor 4のようなアプリケーションをロードしようとすると、webkitエンジンとの非互換性のために失敗します(一部はサンドボックスに関連していますが、すべてではありません)
simion314

3

[Windowsのみ] HTMLアプリケーション(HTA)アプローチを試してください-.htmlファイルを.hta拡張子で保存してください。また、ブラウザーウィンドウを削除したり、アプリの信頼レベルを設定したりするための追加の設定もいくつか提供します。詳細については、http//en.wikipedia.org/wiki/HTML_Applicationを参照してくださいここhttp://technet.microsoftを参照してください。 com / en-ca / scriptcenter / dd742317.aspx


2

うーん... HTML5 / CSS / JS用の仮想マシンはブラウザのように聞こえます。:)

リッチインターネットアプリをデスクトップに導入するという考えに基づいているため、Adobe AIRがうまくいくかもしれません。しかし、私はそれを使用したことがありません。

あなたができることの1つは、ある種の事前にパッケージ化されたWebブラウザーコントロールを使用する非常に基本的なデスクトップアプリを開発することです(たとえば、Mac用に開発している場合は、ウィンドウにWebViewをドロップし、アプリにHTMLをロードするための基本的なコードを追加するだけです起動)。





1

現在の答えは、各プラットフォームの異なるソリューションであるということです。

  • MAC OSXの場合UIWebViewでCocoaデスクトップアプリを作成します
  • Windowsの場合は、ブラウザーコンポーネントを使用して.NETデスクトップアプリを作成します。

?ブラウザコンポーネントは、いくつかの制限(?ファイルシステムまたはshowポップアップへの缶アクセス)、あなたが使用以外の任意のプロジェクトを知っています。このアプローチ...持っていると私は使用以上のウィンドウを考える
clagccs

ベストアンサーですが、誰も認めません。背面では、ほとんどすべてのハイブリッドソリューションが、ブラウザーのように動作するWebViewコンポーネントを使用しています。これだけで十分です。WebViewを起動し、html / css / jsを読み込んでください。
Dan Ochiana 2017年

1

TomcatやApacheなどの組み込みサーバーを使用できます。

私は完全なJava WebアプリケーションにTomcatを使用しています。ブラウザ内で実行しますが、アプリケーションをインストールする必要があります。アプリを起動し、サービスを起動してブラウザーを開くためのショートカット。

または、webkitを使用してみてください


1

少し遅いですが、Google Chromeのポータブルバージョンを使用してから、小さなWindowsアプリを作成してインストールし、-kioskおよびアプリモードへの.inkショートカットを作成できます。
ちょっとクロムアプリケーションのショートカットに似ていますが、それらのためにクロムをインストールします。


1

Windowsで必要なだけの場合は、HTMLアプリケーション(HTA)を検討する必要があります。これは、IE 5(10年以上)以降、Internet Explorerの一部となっています。

サーバー不要、完全なHTML形式、ローカルリソース(COM / USBポートを含む)への完全なアクセス、素晴らしい。また、Visual Studioでデバッグするのは簡単で、MSHTA.exeにバインドするだけです

次のメタタグを使用して、HTAでHTML 5を有効にできます。

<!-- enable html5 features --> 
<meta http-equiv="X-UA-Compatible" content="IE=edge"></meta>

+1 LinuxとMacのサポートも探してください:)
Bhargav Nanekalva
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.