2015-04-16 22 views
15

Ho creato un'applicazione HTML con AngularJS/jQuery/Bootstrap con API REST AJAX.
È possibile creare eseguibile/installatore per il sistema operativo Windows?Come si converte l'applicazione Web in eseguibile sul desktop?

Senza alcun software di terze parti, dovrebbe apparire come un'applicazione nativa, ma HTML.
Ad esempio, Slack messenger ha versioni web/mac/windows e hanno lo stesso aspetto.

Qualche idea?

// UPD

Probabilmente ho bisogno di un involucro (WebView), ma ho bisogno di tutte le caratteristiche per EcmaScript5/CSS3.

+0

Possibile duplicato di [gioco HTML5 in app nativa] (http://stackoverflow.com/questions/19075208/html5-game-to-native-app) –

risposta

11

Electron è il modo easer:

1. Installare elettrone

2. Creare e modificare main.js:

const electron = require('electron'); 
const { app, BrowserWindow } = electron; 

let mainWindow; 

app.on('ready',() => { 
    mainWindow = new BrowserWindow({ 
     width: 1000, 
     height: 700 
    }); 

    mainWindow.setTitle('title of the desktop app'); 
    mainWindow.loadURL('http://www.yourwebpage.com'); 

    mainWindow.on('closed',() => { 
     mainWindow = null; 
    }); 
}); 

3. Eseguire un'applicazione desktop:

electron main.js 

E per creare l'app, utilizzare un generatore come generatore di elettroni.

Spero che ti aiuti!

+2

Diventa un'applicazione desktop vera o solo un browser specifico del sito? – Mojimi

-1

Con un po' di codice wrapper si potrebbe confezionare come un app Chrome. Non hanno bisogno di essere eseguiti in una finestra del browser ma hanno tutte le funzionalità di un'app Web, standalone.

https://developer.chrome.com/apps/about_apps

+0

Grazie, ma l'applicazione non dovrebbe fare affidamento su software di terze parti. – Miraage

+0

Google ha appena annunciato l'intenzione di eliminare progressivamente il supporto per le app di Chrome su tutte le piattaforme tranne Chrome OS. http://www.theverge.com/2016/8/19/12555052/google-shutting-down-chrome-apps – abe312

0

Ci sono un sacco di quadri là fuori che può avvolgere la vostra applicazione web in un'applicazione nativa che può accedere cose come l'API di archiviazione di file per un sistema operativo. This is the specific guide for Windows.

Attenzione però - è necessario passare il tempo facendo test solida e di lavoro QA per la vostra applicazione nativa in modo che non si sente come un sito web all'interno di un involucro nativo, così come si integra bene con tutte le versioni del sistema operativo vuoi essere compatibile con. Tweetdeck per Mac è un esempio di cosa non fare, in pratica un browser Web in un wrapper nativo.

+0

Sì, ho bisogno di un wrapper che rimuova tutti i controlli del browser e avvia appena webview. Ma ho bisogno di supportare quasi le funzionalità di EcmaScript5/CSS3. – Miraage

+1

Puoi approfondire perché hai bisogno di questo? L'applicazione di Slack è il risultato di un codice nativo con oltre 1.000 ore di lavoro di sviluppo di alta qualità costantemente aggiornato. Sebbene visivamente e funzionalmente appaia lo stesso, l'integrazione con il sistema operativo (come le notifiche del growl) utilizza codice OS nativo. –

3

Io stesso cercavo una soluzione completa per un po '. Ho provato di tutto, da TideSDK, AppJS, Appcelerator Titanium, codice nativo in VB.NET, XCode, Python, C++, Electron, node-webkit, ecc. In pratica mi hai dato un nome e l'ho provato.

Nota Electron è bello, ma funziona solo con processori a 64 bit. Quindi node-webkit è buono se vuoi eseguire la tua app su processori a 32 bit.

Quindi ho deciso di creare la mia soluzione open source denominata WebDGap.

Attualmente WebDGap funziona su Windows, Linux, Mac OS X, Google Chrome e come applicazione Web!

Guarda il How To Video per imparare, bene come usare l'app ovviamente.

Ecco uno screenshot. The WebDGap Application

Essendo che sei già un utente Mac puoi unire l'app esportata in 1 file .app mac. Questo può essere fatto con Automator (e un piccolo script di shell).

C'è anche un parco giochi di codifica che ho realizzato per gli utenti mobili che ha questa funzione chiamata kodeWeave.

Ecco un gioco Tic-Tac-Toe ho intenzione di esportare come un App Mac: kodeWeave App

Ora la web app è in esecuzione come applicazione nativa per Mac! Tic-Tac-Toe is now running as a Mac App