Android und seine Besonderheiten Teil 1 - Intents

by Lukas Klinzing 19. Juli 2009 01:20

Android, iPhone oder doch Windows Mobile? Diese Frage hört man häufig in dieser Zeit, wo gerade zu die Mobilwelt blüht. Interessiert man sich für die Besonderheiten des Android Betriebssystems, so ist dieser Artikel sicherlich hilfreich, denn er zeigt eine Besonderheit auf, die bisher wenig oder gar überhaupt nicht bei anderen Betriebssystemen aufzufinden ist. 

Dieser Artikel behandelt kurz und klar die Funktionsweise der Intents. 

Was sind Intents?

Am besten für den Laien zu erklären, sind Intents Signale, die gewisse Informationen beinhalten. Signale, welche Programme senden und diese können von anderen Programmen aufgefangen und verarbeitet werden. So erklärt, hört sich das eigentlich ganz logisch an und viele sagen, das kann mein iPhone auch. Deshalb gehe ich noch ein wenig mehr ins Detail und beschreibe das an einem hypothetischen Beispiel.

Nehmen wir an, ich öffne das Programm, welches meine Kontakte verwaltet. Dieses zeigt mir nun eine Liste aller meine Kontakte. Sobald ich auf einen Kontakt klicke, öffnet sich ein zweites Fenster mit der Möglichkeit, Kontaktdaten zu bearbeiten. In diesem Vorgang wurde bereits ein Intent versandt, empfangen und verarbeitet. Aber wo? - Zwischen der Auflistung aller Kontakte und der Bearbeitungsfunktion. Wenn ich in der Liste auf einen Kontakt klicke, wird ein Signal (Intent) generiert. Dieser beinhaltet Informationen wie Identifikator, Typ und noch weitere für uns uninteressante Informationen. Nachdem das Signal generiert wurde, wird es an das Android System verschickt. Das Android System widerrum sucht ein Programm, welches am besten geignet ist, den Inhalt des Intents zu verarbeiten. Hier erkennt Android sofort das Programm, welches zum Bearbeiten des Kontakts gedacht ist und führt es aus. 

Das Neuartige an diesem Vorgehen ist nun, dass andere Programme, völlig egal was sie machen, können sich auf die Informationen des Intents einstellen, sodass wenn dieser Intent gestartet wird, Android eben noch ein anderes Programm zur Verarbeitung dieses Intents in Betracht zieht. Sobald mehrere Programme eine solche Aktion ausführen können, fragt Android automatisch den Benutzer via Dialog, welches Programm nun diese Information verarbeiten soll. 

Man könnte also das Programm, welches meine Kontakte auflistet und bearbeitet theoretisch so modifizieren, dass zum Bearbeiten des Kontaktes, ein völlig anderes Programm eingesetzt wird. Demnach ist diese Besonderheit und Offenheit etwas sehr zukunftsorientiertes und viel versprechendes.

Ein paar Beispiele, wo Intents Ihre Stärke zeigen:

Surft man mit seinem Android Handy im Internet und stößt im Browser z.B. auf ein YouTube Video und klickt darauf, so öffnet sich nicht ein neues Browserfenster, sondern automatisch das YouTube Programm, welches bereits auf dem Android Handy installiert ist.

Hat man ein Programm vom Drittanbieter installiert und dieser möchte in seiner Applikation auf andere Applikation aus seinem Hause hinweisen, so baut er ein Intent ein, der beim Betätigen sofort in die Market-Applikation führt und den User auch direkt zu diesem Artikel leitet.

Wo ist der Hacken an der Sache?

Damit diese Funktionalität auch wirklich zum Einsatz kommen kann, muss sie auch dem entsprechend implementiert werden. Es hat leider keinen Effekt, wenn jeder Programmierer eine völlig abgekapselte Applikation schreibt, die weder auf Intents reagieren, noch öffentliche Intents herausschicken kann. Interessant ist das ganze also nur dann, wenn jeder Programmierer seine Applikation so baut, dass andere Programme darauf reagieren können und letztendlich der Benutzer selbst entscheiden kann, welches Programm diese Aktion nun ausführen bzw. verarbeiten soll. 

An dieser Stelle, für alle Entwickler, möchte ich eine Webseite empfehlen, die den Versuch wagt, Intents für jeden Programmierer offen zu legen, denn obwohl es Die Funktionsweise des Androids sein soll, ist sie immernoch sehr verschollen und undurchsichtig. 

Tags: , ,

Entwicklung | Funktionen

Noch mehr qualitative Apps für Android (Android Developer Challenge 2)

by Lukas Klinzing 16. Juli 2009 20:20

Um sich gegen andere Riesen wacker zu halten, müssen auch einem Giganten gute Ideen kommen. Das OS X von iPhone, Windows Mobile von Microsoft und das auch weit verbreitete Symbian OS sind starke Konkurrenten, in einer Welt die Konkurrenz entweder stark abwehrt oder gar nicht entfalten lässt. Dazu haben die Macher von Android die Android Developer Challenge in die Welt gerufen. Durch diese Aktion wurden viele Programmierer motiviert, qualitative, leistungsfähige und vor allem nützliche Applikationen für das Android OS zu schreiben. Mit einem Ergebnis, dass sich durch aus sehen lassen kann. 

Nun startet Android die zweite Challenge, um noch ein paar Apps oben drauf zu werfen. Ein Schmankerl für einen talentierten Programmierer, oder eine Firma, denn die Preisgelder können sich sehen lassen. Die Gewinner einer Kategorie erhalten jeweils 100.000 $ und der Gesammtgewinner noch 150.000 $ dazu... 

Eine wichtige Aufgabe für User (Nutzer) ist es nun viele verschiedene neue Apps auszuprobieren und diese zu bewerten. Wir, die User, sind nun die Jury.

Freuen wir uns auf neue und attraktive Apps!

 

 

Tags: , ,

Entwicklung

Powered by BlogEngine.NET 1.5.0.7
Theme by Mads Kristensen