2015-09-27 22 views
7

Sto scrivendo un'app universale usando windows 10, visual studio 2015 e C#. Mi piacerebbe ro eseguire questa app su Windows, Linux e Mac. So che mono non implementa il framework di presentazione di Windows, quindi, se scrivo un'app wpf, viene eseguita su Windows. Ora, se scrivo un'app universale, posso eseguirlo in modalità mono? Se sì, come posso fare?È possibile eseguire Mono applicazioni universali di Windows?

risposta

10

Il sacro Graal domanda Net UI :-)

TL; TR = risposta No.

universale piattaforma Windows (UWP) API di base (noto anche come di Windows runtime/WinRT) e il risultante APPX le applicazioni basate hanno come target solo le piattaforme Windows 10 (Phone, PC, Tablet ...) poiché tali API e runtime non esistono sugli altri desktop.

Utilizzando Xamarin/Mono è possibile riutilizzare una parte della logica di livello "aziendale" dell'app C#, ma il livello di presentazione e la logica della GUI devono essere riscritti utilizzando una GUI diversa (Widget nativi, GTK #, QTSharp, HTML/CSS/NodeJs, ecc.). Lo stesso modello utilizzato dagli utenti per lo sviluppo mobile basato su Xamarin per C#, condividere la logica dell'app C# attraverso piattaforme e utilizzare Xamarin.Mac per creare un'interfaccia utente OS-X nativa e/o costruire un'interfaccia utente utilizzando GTK #, incorporare il runtime della tua app logica in un guscio Electron/Blink, ecc.

Attualmente il progetto Windows 10 per Apache Cordova che è HTML, JavaScript e CSS, si rivolge solo alle piattaforme Mobile (WinPhone, iOS, Android) e Windows 10 PC/Tablet. Questo non vuol dire che qualcuno non possa sviluppare un nuovo obiettivo Cordova per includere il supporto di desktop manager OS-X e Linux (ma non conosco nessuno che non sia già in stallo): -/

Anche Microsoft Visual basato su xplat Studio Code per Linux e OS-X utilizza Electron (basato su Chromium) per distribuire l'applicazione basata su io.js insieme al motore di layout Blink per rendere l'interfaccia utente, il tutto fatto in HTML/CSS/JS.

Problemi correlati