Schlagwort-Archive: Android

Android Studio 2.0 ist fertig

Google hat die Version 2.0 der Android-Entwicklungsumgebung Android Studio fertiggestellt. Neben einem Update auf IntelliJ 15 als Basis wurde vor allem am Emulator gearbeitet, der nun mehrere Prozessorkerne nutzt und bei vorhandener CPU-Unterstützung für Virtualisierung eine ordentliche Geschwindigkeit aufweist. Außerdem gibt es eine Funktion »Instant Run«, die Änderungen am Code auf den Emulator überträgt, ohne das vollständige Anwendungspaket bauen und deployen zu müssen.

Weitere Informationen gibt es im Android-Entwickler-Blog von Google.

Microsoft kauft Xamarin und macht die Produkte (teilweise) kostenlos verfügbar

Bereits im Februar hat Microsoft bekanntgegeben, das Unternehmen hinter dem Mono-Framework, Xamarin, zu übernehmen. Auf der Entwicklerkonferenz Build vor einigen Tagen wurden die ersten wichtigen Änderungen angekündigt: Die Xamarin-Erweiterungen für Visual Studio sowie die Standalone-Entwicklungsumgebung Xamarin Studio für OS X in einer Community Edition sind ab sofort kostenlos verfügbar. Verschiedene Dienstleistungen wie die Test Cloud Services bleiben weiterhin kostenpflichtig, stehen jetzt jedoch automatisch MSDN-Abonnenten zur Verfügung.

Außerdem wurden das Mono-Framework und alle bisher proprietären Erweiterungen unter der MIT-Lizenz veröffentlicht.

Microsoft dürfte mit diesem Schritt vor allem die »eigenen« Entwickler stärken: Angesichts der weiterhin schwächelnden eigenen mobilen Software-Plattform sind iOS und Android noch immer die höher priorisierten Ziel-Plattformen bei der Entwicklung vor allem von neuen Apps. Für Entwickler ist es daher attraktiv, aus einer einzigen Entwicklungsumgebung heraus mit einheitlicher Programmiersprache und möglichst gemeinsamer Code-Basis gleich drei Plattformen bedienen zu können.

Daneben dürfte die Frage spannend sein, was die Übernahme durch Microsoft für das Mono-Framework generell und speziell unter Linux bedeutet. Immerhin scheint es nach der Veröffentlichung des .NET-Frameworks als Open Source fraglich, dauerhaft zwei Versionen der Laufzeitumgebung zu pflegen. Und unter Linux hat Mono aus verschiedenen Gründen nie eine besonders große Rolle gespielt. Dabei sind die Mono-Runtime, die Sprache C# und MonoDevelop als IDE eigentlich eine tolle Kombination.

Der Installer von Xamarin Studio unter OS X
Der Installer von Xamarin Studio unter OS X

Microsoft und Nokia: Lied vom Scheitern

Vor fünf Jahren haben Microsoft und Nokia beschlossen, gemeinsam den Handymarkt neu aufzurollen. Mit den einst erfolgreichen Geräten von Nokia und der Software-Expertise von Microsoft wollte man zurück an die Weltspitze. Der Plan ist fulminant gescheitert. Heise Online fasst die Geschichte dieses Misserfolges einmal zusammen.

Es gibt allerdings zwei Aspekte, die Heise nicht explizit erwähnt: Denn nicht nur im Consumer-Bereich ist Microsoft mit Windows Phone und Windows Mobile gescheitert, sondern auch im Business-Bereich und im industriellen Bereich. Im Business-Bereich waren auf einmal iPhones die bessere Wahl, als Windows-Geräte, nicht einmal eine möglicherweise bessere Integration in die Windows-Netzwerke war noch Argument, hat Apple doch von Anfang an darauf geachtet, dass sich die iOS-Geräte gut anbinden lassen, etwa an bestehende Exchange-Infrastrukturen.

Und nachdem es im industriellen Bereich (mobile Datenerfassung, Barcode-Scanner etc.) jahrelang praktisch nichts neben Windows Mobile gegeben hatte, konnten die Unternehmen irgendwann reihenweise auf Android-Geräte umschwenken. Niemand vermisst hier die archaischen anmutenden Windows-Geräte oder möchte noch dafür programmieren. Und aktuell sieht es auch nicht danach aus, als könnte Windows 10 diese Situation ändern.

[Oder hat jemand andere Erfahrung gemacht?]

Software-Tipp: aWallet Password Manager

Vor einiger Zeit habe ich hier den Tipp gegeben, aus Sicherheitsgründen für jeden Internet-Dienst, bei dem man sich registriert, ein eigenes Passwort zu vergeben. Das erste Argument, das man dagegen hört, ist sicherlich, dass sich kein Mensch mehr als eine Handvoll Passwörter wird merken können. Dafür gibt es Abhilfe, und zwar Software-Tools, die einem das »Merken« abnehmen.

Ich benutze seit einiger Zeit das Tool »aWallet Password Manager«, das auf meinem Android-Handy läuft, und das ich hier kurz vorstellen und empfehlen möchte.

Screenshot von aWallet
Screenshot von aWallet

Eine App für das Handy ist für mich sinnvoller als eine PC-Anwendung, da ich das Handy praktisch immer dabei habe. aWallet besitzt alle Grundfunktionen, die ich von einem Password Manager erwarte: Einträge können in verschiedenen Kategorien abgelegt werden, wobei die Kategorien inkl. der zu erfassenden Felder beliebig vom Anwender konfiguriert werden können. Ein Passwort-Generator ist enthalten, ebenso eine Suchfunktion. Und nicht zuletzt fügt sich die App auch optisch vernünftig in das Android-System ein.

Der größte Nachteil dieser Lösung: Sollte das Mobiltelefon abhanden kommen, sind nicht nur (falls kein Backup existiert) die Passwörter »weg«. Im schlimmsten Fall erhält der »Finder« Zugriff auf alle dokumentierten Benutzerkonten. aWallet scheint mir ausreichend Funktionen integriert zu haben, um diese Gefahr zu verringern: Wichtig ist zunächst, ein ausreichend starkes Master-Kennwort zu vergeben. Die Daten werden ausschließlich in verschlüsselter Form auf dem Gerät abgelegt, so dass ein Zugriff durch andere Apps bzw. ohne Kenntnis des Master-Kennwortes nicht möglich ist. Die App kann außerdem so konfiguriert werden, dass nach einer bestimmten Anzahl von Fehleingaben bzw. gescheiterten Entsperr-Versuchen die Daten auf dem Gerät gelöscht werden. Optional können Backups auf SD-Karte oder in der Cloud (Dropbox) erzeugt werden, die selbstverständlich auch dort ausschließlich verschlüsselt abgelegt werden. Ver- und Entschlüsselung erfolgen immer nur auf dem Android-Gerät.

Die App gibt es in einer kostenlosen Version, bei der per In-App-Kauf zusätzliche Funktionen freigeschaltet werden können. Die Cloud-Version ist kostenpflichtig, allerdings sind 2,59 EUR für die gebotene Funktionalität sicherlich angemessen.

Humble Mobile Bundle #4

Oh, es gibt noch Überraschungen! Das Humble Mobile Bundle #4 bietet wirklich erstklassige Spiele zu genau dem Preis, den man zu zahlen bereit ist. Die Rahmenbedingungen sind wie immer: wer mehr als den aktuellen Durchschnitt zahlt, erhält zusätzliche Spiele; die Verteilung der eigenen Zahlung kann man dabei selbst bestimmen. Die enthaltenen Spiele lauten: Catan, Vector, Riptide GP2, Zombie Gunship sowie bei überdurchschnittlicher Zahlung BADLAND Premium sowie Breach & Clear.

Die regulären Preise der Einzeltitel sind nicht so furchtbar hoch; den Gesamtpreis für das Bundle darf man sich ja aber selbst überlegen. Und vermutlich werden den Einkäufen nach wenigen Tagen wieder zusätzliche Inhalte hinzugefügt. Das Angebot läuft noch fast zwölf Tage.

Zum Angebot

Eine neue IDE für die Android-Entwicklung

Wer einmal die Werkzeuge, die Google für die Android-Entwicklung bereitstellt, mit den Tools für konkurrierende Plattformen – in erster Linie ist das XCode für die iOS-Entwicklung – vergleicht, wird feststellen: Google ist hier klar im Nachteil. Die aktuelle Lösung besteht aus einem SDK mit CLI-Werkzeugen, einer Sammlung von Plugins für Eclipse sowie einem auf einer virtuellen Maschine basierenden Device-Emulator. Zwar ist ein Entwickeln damit möglich, zwischen dieser Lösung und dem angesprochenen XCode liegen in Sachen Komfort und Geschwindigkeit, kurz: dem Wohlfühl-Faktor, jedoch echte Welten. Zu langsam, zu inkonsistent, zu unübersichtlich ist die Android-Entwicklungsumgebung.

Auf seiner letzten Entwicklerkonferenz im Mai hat Google mit dem »Android Studio« nun endlich eine neue Entwicklungsumgebung angekündigt. Diese basiert auf dem bekannten IntelliJ IDEA (das bereits etwas Unterstützung für Android-Projekte enthielt), ist plattformübergreifend (Windows, Mac, Linux) verfügbar und ist vor allem: noch sehr unfertig. Aktuell befindet es sich offiziell in der Version 0.2.

Dennoch: Die Entscheidung für eine neue Basis ist richtig. Das beginnt schon damit, endlich alle benötigten Werkzeuge in einen einzigen Download zu packen und somit die Ersteinrichtung zu erleichtern.

Allerdings sieht man auch hier sofort, dass die unterschiedlichen Teile unterschiedliche Ursprünge haben. Während die eigentliche Entwicklungsumgebung etwa auf dem Swing-Framework beruht, verwenden »Android Virtual Device Manager« und »Android Device Monitor« das SWT-Toolkit. Und an der größten Schwachstelle kann auch eine aufgeräumtere IDE nichts ändern. Das ist und bleibt der ultra-langsame und fehlerträchtige Emulator.

Bis das »Android Studio« für den Entwickler-Alltag taugt und die Einzelkomponenten vernünftig integriert sind, vergeht wahrscheinlich noch mindestens ein Jahr, eher noch mehr Zeit. Bis dahin überarbeitet Google vielleicht auch den Emulator noch einmal bzw. ersetzt ihn durch ein vollständig andere Lösung. Es ist an der Zeit, den Rückstand zu XCode (und auch den Alternativen wie »Xamarin Studio«) aufzuholen.

Android Studio unter MacOS
Android Studio unter MacOS

Mono: wohin geht die Reise?

Mono, die Open-Source-Implementierung von Microsofts .net-Plattform, war ein tolles Versprechen an Linux-Entwickler: Eine mächtige Software-Plattform, eine breite Unterstützung unterschiedlicher Programmiersprachen und nicht zuletzt die Möglichkeit, Anwendungen plattformunabhängig zu entwickeln.

Lediglich drohende Patentforderungen von Seiten Microsofts schienen der Verwendung im Wege zu stehen, Microsoft aber frühzeitig ein „Community Promise“ abgegeben, von solchen Forderungen abzusehen. Neben der Mono-Plattform hat das Team um Miguel de Icaza mit MonoDevelop noch eine großartige Entwicklungsumgebung angeboten.

Und auch wenn nicht alle Vorbehalte verschwunden sind, so wurde Mono doch in alle großen Distributionen integriert, und es entstanden einige interessante Software-Projekte auf Mono-Basis.

Mittlerweile scheinen keine Software-Patente, sondern eine andere Entwicklung für Linux-Entwickler bedrohlicher zu sein: Miguel de Icaza als der Kopf hinter dem ganzen Projekt und sein Unternehmen Xamarin, das sich um die Weiterentwicklung kümmert, haben sich von Linux – und scheinbar vom OpenSource-Gedanken – verabschiedet.

Miguel de Icaza selbst verwendet Linux schon seit Monaten überhaupt nicht mehr; Xamarin setzt stattdessen voll auf Apple-Systeme, insbesondere auf den boomenden Mobile-Markt. Und so wird die aus MonoDevelop hervorgegangene Entwicklungsumgebung Xamarin Studio (noch?) nicht für Linux angeboten, vom Vorgänger gibt es für die Linux-Distributionen teilweise nur noch vollkommen veraltete Versionen. Eine brauchbare »Community-Lizenz« für OpenSource- oder Freeware-Projekte gibt es auch nicht, mittlerweile aber wenigstens eine kostenlose und dafür stark eingeschränkte Version.

Und so ist durchaus fraglich, ob wenigstens die Mono-Laufzeitumgebung (die ja unter einer freien Lizenz steht) noch eine Zukunft unter Linux hat, und welchen Wert diese noch besitzt, wenn keine aktiv weiterentwickelte IDE existiert. Man kann Xamarin nicht vorwerfen, dass sie den gewählten Weg gehen. Für die OpenSource-Szene ist es leider kein guter Weg. Angesichts der ungewissen Zukunft würde ich für ein neues Projekt jedenfalls nicht auf Mono setzen.

Magazine lesen auf Android-Geräten: eine Enttäuschung

Was haben die deutsche Wired, der Stern, CHIP und der Elektrospieler gemeinsam? Sie alle kann man in einer Digital-Ausgabe auf seinem Android-Gerät lesen. Und: ihre Apps basieren alle auf der gleichen, miesen Software.

Die Software um ein E-Magazin herum ist eigentlich vergleichsweise überschaubar: Mit ihr lassen sich die verfügbaren Ausgaben durchblättern und kaufen. Gekaufte Ausgaben werden heruntergeladen und können anschließend gelesen werden. Dabei können die grundsätzlich starren Seiten mit einzelnen multimedialen / interaktiven Elementen angereichert werden.

Klingt eigentlich nicht außergewöhnlich anspruchsvoll.

Und dennoch macht der Software-Hersteller so einiges falsch. Das beginnt damit, dass die Apps sicht optisch nicht an StyleGuides von Google / Android halten, sondern überall Elemente im iOS-Stil verwenden. Dazu sind die Apps furchtbar träge (auch auf Geräten mit reichlich »Power«) und relativ instabil. Teilweise, je nach Magazin, wird auch nicht der komplette Bildschirm genutzt. Der Back-Button verhält sich unlogisch oder zeigt gar keine Reaktion.

Unpassende Interface-Elemente. Der Banner funktioniert nur im Querformat.
Unpassende Interface-Elemente. Der Banner funktioniert nur im Querformat.

Anders als iOS ist Android von Grund auf darauf ausgelegt, auf Geräten mit verschiedensten Bildschirmgrößen und -Auflösungen zu laufen und bietet den Entwicklern zahlreiche Möglichkeiten, darauf zu reagieren. Standard-Interface-Elemente skalieren ohnehin automatisch mit, d. h. auf Buttons etwa werden Schriftgröße und Innenabstand entsprechend der Auflösung angepasst. Grafiken (etwa für Symbolleisten) können in verschiedenen Größen für unterschiedliche Auflösungen hinterlegt werden; es lässt sich sogar das komplette Layout auflösungsabhängig austauschen.

Von diesen Mechanismen kann man allerdings schwerlich profitieren, wenn man sie komplett ignoriert. So kommt es, dass das Interface schon auf einem Nexus 7 nicht nur übel aussieht, sondern auch schwer zu bedienen ist, auf einem Nexus 10 sind die Apps laut Reviews anscheinend vollkommen unbrauchbar. Wer eine Ahnung davon kriegen möchte, welche Erfahrungen die Anwender mit den Magazin-Apps gemacht haben, der sollte sich einmal die Bewertungen im Play Store durchlesen.

Konsequente Verwendung von unpassenden UI-Elementen
Konsequente Verwendung von unpassenden UI-Elementen

Aus Sicht der Verlage ist das Vorgehen durchaus nachvollziehbar. Kaum ein Verlag wird die notwendigen Kompetenzen und Kapazitäten besitzen, um In-House eine ansprechende App entwickeln zu können; zudem misst man der Android-Plattform weiterhin keine große Bedeutung zu. An erster Stelle steht das iPad, und dafür wird publiziet. Wenn es nun aber fertige Lösungen gibt, ohne nennenswerten Zusatzaufwand die Inhalte auch unter Android zu verwerten – selbst in einer schlechten Umsetzung – dann ist das durchaus verlockend. Man ist zwar nicht angewiesen auf ein paar zahlende Android-Nutzer, aber wenn man, wie gesagt: ohne großen Zusatzaufwand, ein paar zahlende Kunden »mitnehmen« kann, dann ist das nicht die schlechteste Option.

Allerdings: Dieses Vorgehen frustriert die Anwender und sorgt nicht unbedingt für einen Image-Zugewinn. Von guten Umsätzen ganz zu schweigen. Dass es auch anders geht, zeigt etwa der SPIEGEL, der ganz offensichtlich eine ganze Menge Aufwand betrieben hat, am Ende aber auch geradezu eine Vorzeige-App für Android hingelegt hat.

Der SPIEGEL macht praktisch alles richtig
Der SPIEGEL macht praktisch alles richtig

Das traurigste an diesem Thema ist, dass die Magazin-Software insgesamt durchaus noch brauchbar läuft; eine vollständige Überarbeitung des User Interfaces würde die Apps qualitativ gleich in einem ganz anderen Licht dastehen lassen – und würde vermutlich nur wenige Tage Aufwand beanspruchen. Freilich: Um ein gutes UI zu gestalten, müssten sich die Entwickler (und Entscheider) ernsthaft auf Android als eigenständige Plattform einlassen, nach Möglichkeit unterschiedliche Testgeräte bereithalten und vor allem: Android-Geräte tatsächlich benutzen, um ein Gefühl dafür zu bekommen, wie die Plattform funktioniert.

Humble Bundle with Android #5

Es gibt mal wieder ein neues Humble Bundle: Nach dem Pay-What-You-Want-Prinzip erhält man vier bzw. (wenn man mehr als den aktuellen Durchschnitt zahlt) sechs Spiele, die allesamt unter Windows, MacOS, Linux und Android laufen sowie bis zu fünf Soundtracks. Wer mindestens einen Dollar bezahlt, erhält außerdem Steam-Keys für die Spiele. Wie immer: ein tolles Angebot, das noch ca. 9 Tage lang läuft.