Letzte Woche Mittwoch zelebrierte Microsoft sein Alljährliches Hardware-Event, bei welchem die neuesten Familienmitglieder der Surface-Reihe der Öffentlichkeit vorgestellt wurden. Neben den üblichen Verdächtigen wie dem Surface Pro 7 oder der dritten Auflage des Surface Laptops kamen unsere Redmonder Freunde nicht nur mit einem Überraschungspaket um die Ecke, sondern mit gleich zwei! Das erste Gerät mit einem Faltbaren Display aus dem Hause Microsoft – Das Surface Neo. Neben dem (ehrlich gesagt umwerfenden) Surface Neo stellte Microsoft direkt ein zweites Gerät mit Faltdisplay vor. Ein Mobilgerät, welches auf den Namen Surface Duo hört – Und anstatt mit Windows 10 mit einem Android-Betriebssystem läuft.
Auf den ersten Blick ist das nicht einmal überraschend. Microsoft weitet schließlich seine Dienste bereits seit Jahren auf andere Plattformen aus. Heute gibt es Microsoft-Dienste wie Outlook, OneDrive, Xbox und den Office-Apps auch unter Android und iOS und demnächst kommt mit dem Xbox Cloud Streaming ein weiterer bedeutsamer dienst hinzu. Speziell für Android-Benutzer arbeitet Microsoft auch an einem eigenen Launcher (Quasi das Startmenü unter Android). Unter dem Namen Microsoft-Launcher bietet Microsoft einen Leistungsstarken Launcher an, an welchem man auch aktiv seit Jahren arbeitet und in Regelmäßigen Abständen viele neue Features bringt. Doch wie wir berichteten, wird das Surface Duo nicht mit dem Hauseigenen Launcher ausgeliefert. Das Entwickler-Team hinter dem Microsoft-Launcher unterstützt das Surface Duo-Team jedoch bei den Arbeiten am Duo. Microsoft arbeitet für das Surface Duo also scheinbar an einer eigenen Umsetzung des Android-Betriebssystems (Der Microsoft Launcher hingegen ist nur eine Android App).
Microsoft’s Android – Zukunft mit Potenzial?
Die letzten Tage sind also etwas spannender als die üblichen Wochen und Monate zuvor 😋. Und wenn man nun ein wenig an der Oberfläche kratzt, findet man noch mehr interessante Punkte.
Vor einigen Tagen fragte ein Nutzer über Twitter, warum auf dem Surface Duo nicht Windows 10 läuft und ob man nicht UWP-Apps auf dem Surface Duo installieren kann. Aber – Wie kommt er darauf, UWP-Apps unter Android zu installieren? Und vor allem antwortete die gefragte Twitter-Seite Windows Developer mit einem „Keine Angst! Obwohl Surface Duo mit Android OS ausgeliefert wird, können Sie aufgrund des Windows 10 Mobile Supports UWP-Apps auf Android Geräten installieren.“. Wie wir bereit in einem älteren Beitrag beschrieben, verweisen die Links in dieser Antwort aber lediglich auf eine Xamarin-Dokumentation in welcher beschrieben wird, wie man mit einer C#-Codebasis native Apps für Android und iOS erstellen kann. Folglich gingen wir also wie viele andere von einem übereifrigen Microsoft-Mitarbeiter aus.
Allerdings fand ich vor einigen Tagen im offiziellen Bereich von Microsoft auf der Quellcode-Plattform GitHub ein neues Repository, welches den Namen JavaWinRT trägt. Zurzeit befindet sich in dem Repository nichts außer 4 Textdateien, der Name alleine reicht aber schon um die Gerüchteküche aufs höchste zu entfachen.
Der Reihe nach, was ist daran so besonders? Dem einen oder anderen dürfte Java ein Begriff sein. Java ist eine weitverbreitete Programmiersprache und beinhaltet nicht nur die Programmiersprache selbst sondern auch die dazu gehörige Laufzeitumgebung, um Java-Anwendungen auszuführen. Ähnlich wie es auch bei der Programmiersprache C# und dem .NET Framework ist. Unter Android ist Java die am weitesten verbreitete Programmiersprache für Apps. Jedes Android-System beinhaltet die sogenannte JRE (Java Runtime Environment – Java Laufzeitumgebung) um Apps auszuführen. Bei der Kompilierung einer App wird der Programmcode aber nicht direkt in den Maschinencode übersetzt. Stattdessen wird der Programmcode in einen Zwischencode übersetzt, welcher dann, wenn man die App öffnet von der JRE ausgeführt wird.
UWP-Apps doch unter Android?
Bedenkt, dass das nachfolgende meine Interpretation und Erfahrung als Software-Entwickler ist, dennoch sind es nur Vermutungen 😉. Das Besondere an diesem Repository ist die die Vermutung, dass Microsoft eventuell an einer Schnittstelle arbeitet, UWP-Apps unter Android ans laufen zu bekommen. Und – aus technischer Sicht ist das heute für Microsoft denkbar einfach. Die Lösung dafür ist der .NET Standard. Bei dem .NET Framework handelt es sich um das klassische Framework, welches seit Jahren unter Windows die Basis verschiedenster Anwendungen bietet. Seit Windows 10 arbeitet Microsoft aber auch an einer Cross-Plattform Variante unter dem Namen .NET Core. In Folge der Entwicklungen und der verschiedenen Zielgruppen sind beide .NET Versionen natürlich nicht komplett kompatibel zueinander. Dafür führte Microsoft den .NET Standard ein – Kein Framework, sondern eine Spezifikation.
Aktuelle Versionen der UWP-Templates in Microsofts Entwicklungsumgebung Visual Studio basieren auf dem .NET Standard. Kompilierte UWP-Apps befinden sich also wie bereits oben beschrieben nicht im Maschinencode, sondern liegen in einer Zwischensprache vor. Unter .NET wird diese als CLR (Common Language Runtime) bezeichnet. Auf den jeweiligen Geräten wird die CLR über einen Just-In-Time Compiler (JiT) ausgeführt. Damit man eine .NET Core bzw. .NET Standard-App auf einer Plattform ausführen kann benötigt man also nur einen für die entsprechende Plattform entwickelten Just-In-Time Compiler. Durch das .NET Core Framework besitzt Microsoft praktischerweise gleich einen passenden JiT-Compiler – Zumindest fast. Die .NET Core Anwendungen lassen sich im Gegensatz zum klassischen .NET Framework nicht nur unter Windows ausführen, sondern auch unter Linux und macOS – Und Android basiert auf einem Linux-Kernel. Folglich bräuchte Microsoft lediglich ein paar Anpassungen an seinem Linux JiT-Compiler vorzunehmen und einen Parser der UWP-Oberfläche hinzuzufügen, damit die UWP-App ins Bild von Android passt. Beides (weiter rein technisch) keine wirklich großen Herausforderungen.
Der einzige Knackpunkt an der ganzen Geschichte wird der folgende Punkt sein: Microsoft CEO Nadella hatte seiner Zeit Windows Mobile abgeschrieben, weil es sich in Kurz nicht gelohnt hatte weiter daran zu arbeiten. Mit Xamarin-Basis besitzt Microsoft eine wirklich gute und Leistungsstarke Plattform für Cross-Plattform Apps unter Android, iOS und Windows. Wozu sollte Microsoft also Arbeit in UWP stecken, dass diese unter Android läuft?
An dieser Stelle überlasse ich euch eurer Fantasie – Diskutiert über diese Entdeckungen und schreibt eure Meinung darüber in die Kommentare.
Durch die Arbeit an neuen UWP Apps füttert man den Microsoft Store und gibt somit dem Surface Neo eine bessere Grundlage. Mit ausreichend guten Apps könnte man sicher auch später mit dem Gedanken spielen Windows 10 X auf das Duo zu bringen. Aktuell macht Android aber noch etwas mehr Sinn. Ich glaube, dass MS das Duo einfach bringt, um die Smartphone Besitzer näher an die Surface Reihe ran zu führen und den W10M Fans wieder mobile MS Hardware zu bieten. Wenn Sie es jetzt geschickt angehen, ist Android auf den Duo nur Mittel zum Zweck. Je nachdem wie W10X später… Weiterlesen »
Häh? Wer bringt denn die ganzen neuen UWP-Apps für das Duo bitte heraus? Microsoft in Eigenregie? Ich weiß zwar nicht, welchen abstrusen Glaubensrichtungen manche hier anhängen, aber zu Glauben, dass durch die neuen Devices nun massenhaft Entwickler UWP proggen ist absolut (wie sage ich es milde?) vermessen. Das hat ja in der Vergangenheit schon so prima funktioniert… 🙄 Und ausgerechnet das Duo, auf dem Androidapps laufen, soll nun Devs anziehen wie 💩 die Fliegen und damit die Grundlage für einen Nachfolger mit Windows schaffen? Wow! Einfach nur wow… Wo gibt es das Zeug was du dir einwirfst? Ich möchte das… Weiterlesen »
Ich habe nicht gesagt, dass das die Entwickler nun in Massen anzieht. Dafür müsste MS das Apfellogo drauf kleben 🤦♂️ wobei es niemand abkaufen würde, dass Apple so etwas innovatives entwickelt hat 😂🤪 Aber MS hat seit langem Hardware, die eben überwiegend mit modernen Apps wunderbar funktioniert. Beispiel Spotify. Ja, es gab Windows Mobile. Ja, es war ein System wie alle anderen auch. Man hat halbherzig was gezimmert, auf dem Desktop klebt aber dennoch das Desktop Programm. Auf einem Neo oder Duo kann Spotify das beispielsweise nicht mehr bringen. Auch wenn auf dem Duo Android läuft, müssen sich Entwickler hier… Weiterlesen »
Das klingt ja nun schon weit differenzierter als dein erster Beitrag. 😉
Prinzip Hoffnung. Glaube ich zwar in diesem Fall nicht dran, aber das sei dir ja unbenommen. Nur schreib‘ es doch dann auch gleich so. Ich kann dir nicht in den Kopf gucken.
Betrachtet man MS regelmäßig, so wird man feststellen das Sie mit dauerhafter Stätigkeit dem Ziel entgegen arbeiten, die Entwickler unter Linux zu W10 zu holen. Ein Baustein ist der zukünftige Linux Kernel under W10. Weiter kann man immer mehr sehen, wie sich die Entwicklungsumgebungen von MS stark weiter entwickeln und der Konkurrenz mittlerweiler überlegen sind. Wenn Nadella sagt, dass das OS nicht mehr von Bedeutung ist, heißt das: Die Entwicklung wird zukünftig plattformübergreifent passieren!
Inzwischen ergibt vieles einen Sinn wo ich mich immer mal wieder gewundert habe. Sieht so aus als gibt’s die Idee mit Duo und Android schon länger
oder Microsoft macht es wie bei seinen diensten, die beste Programmiersprache für jedes Programm egal ob von MS oder nicht. Das gleiche bei Surface, das beste BS für jedes Gerät egal ob von MS oder nicht
Ich halte die aufgestellte These für vollkommen unsinnig. Wie soll das konkret umgesetzt werden (ich halte das im Artikel beschriebene Processing nämlich durchaus für eine Herausforderung)? Und mir fehlt auch hier vor allem die Phantasie für den realen Mehrwert. Was fängt man bitte allein mit UWP auf Android an? Dort gibt es praktisch für jede UWP eine Android-App mit besserer optischer und technischer Integration ins System und mit zweifellos besserem Support. Die meisten UWA im Store sind inzwischen Leichen mit Schimmel obendrauf. Was auf Android tatsächlich fehlt ist die x86-Kompatibilität für echte 32-/64-Bit Desktopanwendungen. Das sollte MS in Android einbauen!… Weiterlesen »
Und was nimmst du ein? Wie schaffst du es bei den zitternden Händen noch so eine 💩 in die Tastatur zu tippen? Das ist übrigens die einzig interessante Frage die mich bei allen deinen Kommentaren beschäftigt.
Was haben Desktopanwendungen auf diesem kleinen Gerät zu suchen? Dafür wurden sie nicht geschrieben. Und da du zusätzliches technisches Gerät bräuchtest, nur um sie vernünftig darzustellen, kannst du auch gleich ein Gerät nehmen, dass dieses bereits mitführt. Dieses Gerät nennt sich PC und gibt es in den unterschiedlichsten Formfaktoren. Das Surface Duo wirst du getrost in der Hosentasche lassen können.
War das nicht der Traum vom Surface Phone den alle immer hatten? Unterwegs ein Smartphone und am Arbeitsplatz mit Dock ein vollwertiger PC. Meiner Meinung nach jedoch über Emulation oder gleich Virtualisierung. Oder doch „Dual Boot“ mit WoA so wie es unter DeX mit Linux möglich ist.
Die Frage ist wofür? Ich vertraue Microsoft nicht, dass sie das technisch perfekt umsetzen. Mit Android hat man hingegen ein stabiles Fundament, das man feinschleifen kann.
Die Frage ist doch, ob es wirklich gleich „perfekt“ sein muss… Klar, bei neuer Experimental-Klapphardware zum Mondpreis müsste es das schon sein. Aber genau darum ist das für mich der völlig Falsche weg. MS müsste einfach mal einen Anfang machen. Am besten mit einem billigen Barrenhandy eines geeigneten Hardwarepartners. Z. B. ein „Xiaomi Mi 10 Windows Edition“; In enger Abstimmung mit den chinesischen Hardwareprofis entwickelt MS dann auf einem regulären ARM-Androiddevice seine angepasste Windows-Version mit Android-Subsystem und vollen x86-Fähigkeiten für den Continuum-Modus. Keine eigenen sackteuren Hardwareexperimente mit dem Klappzeug, bei denen Hersteller und Käufer im Zweifel viel Geld verbrennen. Ein… Weiterlesen »
Also wenn es das ist was dich bei meinen Kommentaren beschäftigt, dann ist das ganz schön bitter und ich kann dir leider nicht weiterhelfen.
Du hättest meine letzten Beiträge einfach mal lesen und begreifen müssen. Die Desktopanwendung haben im Einsatzmodus „Smartphone“ gar nichts auf den Smartphones zu suchen. Hier wird die .apk-Appwelt benötigt, da UWP tot ist. Im verbundenen, stationären „Continuum“-Modus werden die Desktopanwendungen aber so bitter benötigt wie nichts sonst. Die Smartphoneapps bringen hier nämlich nicht weiter. Surface Phone war die Vision vom ultimativen Device in allen Lebenslagen.
Es hat mit Windows 10 Mobile/Phone nicht geklappt, die UWP-Plattform so richtig zum Laufen zu bringen. Es gibt zwar eine feine, kleine und sehr gute Anzahl Apps im Store, aber der ganze große Rest der Pille-Palle-Apps (Apps mit wenig Funktionen von speziell einem Hersteller/Webseite) bleibt/blieb außen vor. Aber genau die würden die Leute auf einem Gerät von MS vermissen – der App-Gap. Insofern war Android zur Vorstellung vom Duo sinnvoll, weil damit ganz klar im Markt bekannt ist – da laufen alle Apps, die ich habe. Hätten sie es mit Windows 10X plus Astoria vorgestellt, wäre das Interesse wesentlich geringer… Weiterlesen »
Es könnte gut sein, dass das Teil des Deals zwischen Microsoft und Google gewesen ist. Google will schon lange einen Fuss in den Enterprisesektor bekommen.
Wenn Microsoft jetzt die Androidbasis genauso so fleissig ausbaut, wie sie das schon mit Chromium machen, könnte Android im Businessbereich und somit auch Google, profitieren.
Wobei Chromium Google nicht unbedingt nutzt. Das nutzt eher Microsoft. Es macht Microsofts Namen wieder groß, super Marketing-Strategie.
Google hat schon einige Sachen übernommen, die Microsoft in den Code eingepflegt hat. Smooth-Scrolling und Zooming z.B. – Chrome profitiert (leider?) auch von Microsofts Arbeit.
Und noch eine Anmerkung zur Sicherheit: Eine JavaRT (Astoria) auf Windows 10X hätte einen riesigen Vorteil: Android krankt ja daran, dass die Sandbox nicht ausbruchssicher ist und man auch Virenscanner braucht und dadurch viele Apps einfach nur gefährlich sind. Bei einem Windows 10X mit JavaRT in einer Sandbox braucht man sich darüber keinerlei Gedanken mehr zu machen – man kann jede App laufen lassen und ist sicher.
Diese Funktionalität auf Android nachzubauen, würde eine fast komplette Neu-/Nachentwicklung von Android bedeuten – ich bezweifle sehr, dass sich MS diese Arbeit macht.
Und noch eine Vision (nein, ich halte nichts von LSD 🙂 ). Hier kommen die EarBuds mit ins Spiel:
Was will der Kunde? Absolute Mobilität und Device-Unabhängigkeit. Was wäre einfacher, als ein Windows-Gerät – egal welches – auf dem alle meine Apps laufen und EarBuds, mit denen ich telefoniere (entweder E-SIM in den Buds oder im Gerät mit Telefon-App, die es ja gibt)?
Dann kann ich ganz nach Bedarf mein Gerät wechseln und habe dann nur noch ein Gerät zum Rumschleppen und nicht mehr zwei. Ich fände das GENIAL.
diese earbuds sind sogar ein schlüssel segment meiner bescheidenen meinung nach. es wurde hier schon oft angemeckert, dass man ja das duo erst aufklappen muss zum telefonieren. mit den earbuds ist dies definitiv geschichte. genauso kann dies dann beim neo oder beim proX gehen mit der dazugehörenden telefon-app. und zack hat MS nicht nur eine sondern gleich 2 neue geräte kategorien geschaffen.
Hat Intel ARM-CPUs? Im Trailer fürs Surface Neo ist deutlich eine Intel-CPU zu sehen. Ich glaube nicht, dass Surface Neo ein ARM-Gerät ist.
Das habe ich mich auch gefragt. Für mich wird es langsam echt etwas unübersichtlich. Warum stellt Microsoft auf dem selben Event ein Surface Pro X und ein Windows 10X vor. Auf dem Pro X läut aber Windows 10 Arm, auf dem Surface Neo Windows 10 X. Zumal das X gerade erst durch die Apple-Welt als „10“ gepeitscht wurde. Das X ist bei Microsoft aber mal wieder genauso nichtssagend, wie das S oder auch RT – wie soll man das den Endkunden erklären? Im Zweifel mündet es immer in ein: Das X/S/RT steht für: Es ist eben nicht die „Vollversion“, hier… Weiterlesen »
Ich habe mich da schlicht verschrieben. Ursprünglich hatte ich da ein anderes surface erwähnt 😉
Gedankenspiel: Gib den Entwicklern ein Instrument in die Hand, was bequemer zu handhaben ist als das, was sie bisher hauptsächlich eingesetzt haben, und das ohne Qualitätsverluste. Zeige es auch in den Welten (OS), in denen sich diese Entwickler hauptsächlich bewegen, am praktischen Beispiel, dass es arbeitet. . Optimiere dieses Instrument immer weiter, und wenn sie merken, dass sie es dadurch tatsächlich leichter haben, und das Instrument immer mehr Stärken zeigt, werden sie bereit sein, diesem Weg zu folgen. [Eine eher langfristige Strategie. So etwas braucht Zeit.] . 2 Teile des Instruments: Teil 1 = eine Grundprogrammierung durch die Entwickler unabhängig… Weiterlesen »
Das, was Du beschreibst, gibt es schon und nennt sich Xamarin. Mit den Forms dazu musst Du nur noch ca. 3-5% des Codes an die gewünschte Oberfläche anpassen, der Rest wird einfach übernommen. Einmal Programmieraufwand für iOS, Android und UWP.
Xamarin ist übrigens kostenlos zu haben und gibt es bereits seit mehreren Jahren. MS hat es extra genau für diesen Zweck gekauft, um es kostenlos den Entwicklern zur Verfügung stellen zu können.
Interessant. Dann scheint Xamarin eine Vorstufe des zweiteiligen Instruments zu sein, von dem ich zuvor schrieb. Mit den 3 – 5 % notwendiger manueller Restanpassung an ein OS gibt es nämlich keine komplette Unabhängigkeit vom OS. Das könnte die Crux sein. . Wieso soll jemand, der 97 – 95 % gleichzeitig von Android, iOS und Win10 geschaffen hat, und der in der Hauptsache nur Absatzchancen bzgl. Android und iOS sieht, also sowieso dann die zwei Mal 3 – 5 % zusätzlich machen muss (wäre in der Summe 103 – 105 %), dann nochmals 3 – 5 % für Win10 stemmen?… Weiterlesen »