Android -Softwareentwicklung


Android -Softwareentwicklung ist der Prozess, durch den Anwendungen für Geräte erstellt werden, die das ausführen Android -Betriebssystem. Google gibt das an[3] "Android -Apps können mit Verwendung geschrieben werden Kotlin, Java, und C ++ Sprachen "Verwenden der Android Softwareentwicklungskit (SDK), während auch andere Sprachen verwendet werden, ist ebenfalls möglich. Alle nichtJava virtuelle Maschine (JVM) Sprachen, wie z. gehen, JavaScript, C, C ++ oder Montagebenötigen die Hilfe von JVM -Sprachcode, der möglicherweise von Tools geliefert werden kann, wahrscheinlich mit eingeschränkter API -Unterstützung. Einige Programmiersprachen und Tools erlauben es plattformübergreifend App -Support (d. H. Für sowohl Android als auch sowohl für Android als auch für iOS). Tools, Entwicklungsumgebungen und Sprachunterstützung von Drittanbietern haben sich seit der Veröffentlichung des SDK im Jahr 2008 weiterentwickelt und erweitert Google Play; Außerdem ermöglicht es die verteilte App-App-Version sowie die Verteilung von App-Versionen vor der Veröffentlichung an Tester.
Offizielle Entwicklungstools
Das Android Software Development Kit (SDK) umfasst eine umfassende Reihe von Entwicklungstools. Die Android SDK-Plattform-Tools sind eine separat herunterladbare Teilmenge des vollständigen SDK, das aus Befehlszeilen-Tools wie z. adb
und Fastboot
.[4] Das Android Debugg Bridge (ADB) ist ein Werkzeug, mit dem Befehle auf einem verbundenen Android -Gerät ausgeführt werden können. Fastboot ist ein Protokoll Wird zum Blinken von Dateisystemen verwendet. Code geschrieben in C/C ++ kann sein zusammengestellt zu ARM, oder x86 nativen Code (oder ihre 64-Bit-Varianten) mit der Android Native Development Kit (NDK).
Android Open Accessoire Development Kit
Die Android 3.1-Plattform (auch nach Android 2.3.4 zurückgeschützt) wird Android Open Accessoire Support vorgestellt, mit dem externe USB-Hardware (ein Android-USB-Zubehör) in einem speziellen "Accessoire" -Modus mit einem Android-betriebenen Gerät interagieren. Wenn sich ein Android-Gerät im Zubehörmodus befindet, fungiert das angeschlossene Zubehör als USB-Host (Kraft- und Aufzählungsgeräte) und das Android-betriebene Gerät fungiert als USB-Gerät. Android-USB-Zubehör wurde speziell so konzipiert, dass sie an Android-betriebene Geräte befestigt und an einem einfachen Protokoll (Android-Zubehörprotokoll) einhalten können, mit dem sie Android-betriebene Geräte erkennen können, die den Zubehörmodus unterstützen.[5]
Externe Hardwareentwicklung
Entwicklungswerkzeuge, mit denen ein Android -Gerät helfen soll, mit externen Elektronik zu interagieren, umfassen IOIO, Android Open Accessoire Development Kit, Mikrobridge, TriggerTrap, etc.
Android Developer Challenge
Die Android Developer Challenge war ein Wettbewerb, um die innovativste Anwendung für Android zu finden. Google bot Preise von insgesamt 10 Millionen an US Dollar, verteilt zwischen ADC I und ADC II. ADC Ich habe vom 2. Januar bis 14. April 2008 Einreichungen angenommen. Die 50 vielversprechendsten Einträge, die am 12. Mai 2008 bekannt gegeben wurden, erhielt jeweils eine Auszeichnung von 25.000 USD für die Weiterentwicklung.[6][7] Es endete Anfang September mit der Ankündigung von zehn Teams, die jeweils 275.000 US -Dollar erhielten, und zehn Teams, die jeweils 100.000 US -Dollar erhielten.[8]
ADC II wurde am 27. Mai 2009 bekannt gegeben.[9] Die erste Runde des ADC II schloss am 6. Oktober 2009.[10] Die Gewinner der ersten Runde von ADC II, aus denen die 200 besten Anträge bestehen, wurden am 5. November 2009 bekannt gegeben. Die Abstimmung für die zweite Runde wurde am selben Tag ebenfalls eröffnet und endete am 25. November. Google kündigte die Top-Gewinner von ADC II am 30. November an. Mit Sweetdreams, was das Doodle!? und Wavesecure wird die Gesamtsieger der Herausforderung nominiert.[11][12]
Community-basierte Verteilungen
Es gibt eine Gemeinschaft von Open Source Enthusiasten, die Android-basierte Verteilungen aufbauen und teilen (d. H. Firmware) mit einer Reihe von Anpassungen und zusätzlichen Funktionen wie z. Flac Verlustloser Audiounterstützung und die Möglichkeit, heruntergeladene Anwendungen auf dem zu speichern microSD Karte.[13] Dies beinhaltet normalerweise Verwurzelung das Gerät. Das Rooting ermöglicht dem Root -Zugriff auf das Betriebssystem den Root -Zugriff auf die vollständige Steuerung des Telefons. Wurzeln haben auch mehrere Nachteile, einschließlich erhöhtes Hackrisiko, hohe Chancen von ZiegelGarantie verlieren, erhöhtes Virusangriffsrisiken usw.[14] Es ist auch möglich, benutzerdefinierte Firmware zu installieren, obwohl der Bootlader des Geräts ebenfalls freigeschaltet werden muss. Benutzerdefinierte Firmware ermöglicht Benutzern ältere Telefone, Anwendungen zu verwenden, die nur für neuere Veröffentlichungen verfügbar sind.[15]
Diese Firmware-Pakete werden häufig aktualisiert, enthält Elemente der Android-Funktionalität, die in einer farbiger-sanktionierten Firmware noch nicht offiziell veröffentlicht wurden, und haben tendenziell weniger Einschränkungen. Cyanogenmod und OMFGB sind Beispiele für solche Firmware.
Am 24. September 2009 gab Google a aufhören und abweichen Buchstabe[16] An das Modder Cyanogen unter Berufung auf Probleme mit der Neuverteilung der Closed-Source-Anwendungen von Google[17] Innerhalb der benutzerdefinierten Firmware. Obwohl der größte Teil des Android-Betriebssystems Open Source ist, werden Telefone mit Google-Anwendungen für die Funktionalität wie die von Closed-Source-Anwendungen verpackt Google Play und GPS -Navigation. Google hat behauptet, dass diese Anwendungen nur über zugelassene Verteilungskanäle von lizenzierten Distributoren bereitgestellt werden können. Cyanogen entsprach der Google -Lizenz und verteilen seinen Mod weiterhin ohne die proprietäre Software. Es bot eine Methode, um lizenzierte Google -Anwendungen während des Installationsvorgangs des Mods zu sichern und diese wiederherzustellen, wenn der Prozess abgeschlossen ist.[18]
Java -Standards
Hindernisse für die Entwicklung umfassen die Tatsache, dass Android keine etablierten Java -Standards verwendet, dh, Java se und MICH. Dies verhindert die Kompatibilität zwischen Java -Anwendungen, die für diese Plattformen geschrieben wurden, und den für die Android -Plattform geschriebene. Android wiederverwendet die Java -Sprachsyntax und die Semantik, bietet jedoch nicht die vollständigen Klassenbibliotheken und APIs, die mit Java SE oder mir gebündelt sind.[19] Es gibt jedoch mehrere Tools auf dem Markt von Unternehmen wie Unzählige Gruppe und auf die Android -Conversion -Dienste, die Java mich anbieten.[20][21][22]
Android bietet seine eigenen GUI -Kurse an und bietet nicht Java AWT, Swing oder Javafx. Es unterstützt nicht die volle Java -Bohnen -API.
Android wurde von der geschaffen Open Mobilset Alliance, was von Google geführt wird. Das frühe Feedback zur Entwicklung von Anwendungen für die Android -Plattform war gemischt.[23] Zu den zitierten Themen gehören Fehler, mangelnde Dokumentation, unzureichende QA-Infrastruktur und kein öffentliches Problem mit der Ausgabe von Problemen. (Google kündigte am 18. Januar 2008 einen Issue Tracker an.)[24] Im Dezember 2007 erklärte Adam Macbeth, Gründer des Mergelab Mobile Startups,: "Funktionalität ist nicht da, ist schlecht dokumentiert oder funktioniert einfach nicht ... es ist eindeutig nicht bereit für die Hauptzeit."[25] Trotzdem erschienen die Android-zielgerichteten Anwendungen in der Woche nach der Bekanntgabe der Plattform. Der erste öffentlich verfügbare Antrag war die Schlangenspiel.[26][27]
Eine Vorschau -Veröffentlichung des Android SDK wurde am 12. November 2007 veröffentlicht. Am 15. Juli 2008 sandte das Android Developer Challenge -Team versehentlich eine E -Mail an alle Teilnehmer der Android Developer Challenge, in der angekündigt wurde, dass eine neue Veröffentlichung des SDK in einem verfügbar war "Privat" Download -Bereich. Die E -Mail war für Gewinner der ersten Runde der Android Developer Challenge gedacht. Die Offenbarung, dass Google einige Entwickler neue SDK -Veröffentlichungen lieferte, und nicht andere (und das privates Arrangement) führte zu einer weit verbreiteten Frustration innerhalb der Android -Entwickler -Community zu dieser Zeit.[28]
Am 18. August 2008 wurde die Android 0,9 SDK Beta veröffentlicht. Diese Version lieferte eine aktualisierte und erweiterte API, verbesserte Entwicklungstools und ein aktualisiertes Design für den Startbildschirm. Detaillierte Anweisungen zur Upgrade stehen für diejenigen zur Verfügung, die bereits mit einer früheren Veröffentlichung arbeiten.[29] Am 23. September 2008 wurde der Android 1.0 SDK (Release 1) veröffentlicht.[30] Laut den Versionshinweisen enthielt es "hauptsächlich Fehlerbehebungen, obwohl einige kleinere Funktionen hinzugefügt wurden". Es enthielt auch mehrere API -Änderungen aus der 0,9 -Version. Seit ihrer Entwicklung wurden mehrere Versionen veröffentlicht.[31]
Am 5. Dezember 2008 kündigte Google die erste an Android Dev Phone, a Sim-Erlocked- und Hardware-ungelockte Gerät, das für fortschrittliche Entwickler ausgelegt ist. Es war eine modifizierte Version von HTCs Traumtelefon. Während Entwickler regelmäßige Verbrauchergeräte verwenden können, um ihre Anwendungen zu testen und zu verwenden, können einige Entwickler ein dediziertes, entsperrtes oder nicht vertraglichem Gerät auswählen.
Ab Juli 2013[aktualisieren]für Android wurden mehr als eine Million Anwendungen entwickelt,[32] Mit über 25 Milliarden Downloads.[33][34] Eine Untersuchung im Juni 2011 ergab, dass über 67% der mobilen Entwickler zum Zeitpunkt der Veröffentlichung die Plattform nutzten.[35] Die Smartphone -Sendungen von Android werden im Jahr 2018 mit einem Marktanteil von 85% über 1,2 Milliarden Einheiten überschreiten.[36]
Siehe auch
Verweise
- ^ a b "Der Android -Quellcode". Source.android.com. Abgerufen 2. Februar, 2017.
- ^ Syed H (24. September 2012). "Editorial: Warum Sie Nexus gehen sollten". Droidenunterricht. Archiviert von das Original am 18. Februar 2017. Abgerufen 17. April, 2013.
- ^ "Anwendungsgrundlagen". Android -Entwickler.
- ^ Modesti, Paolo (März 2021). "Ein Skript-basierter Ansatz für die Lehre und Bewertung der Entwicklung von Android-Anwendungen". ACM -Transaktionen zur Computerbildung. 21 (1): 1–24. doi:10.1145/3427593. Abgerufen 8. Mai, 2022.
- ^ "Android Developers Guides". Entwickler.android.com. Abgerufen 17. April, 2021.
- ^ Chen, Jason (12. Mai 2008). "Die Top 50 Anwendungen". Android Developers Blog. Archiviert Aus dem Original am 25. September 2009. Abgerufen 4. September, 2009.
- ^ Brown, Eric (13. Mai 2008). "Android Developer Challenge kündigt die Erstrunde-Gewinner an". Linux für Geräte. Archiviert von das Original am 14. Mai 2008.
- ^ "ADC I TOP 50 Gallery". Android Developer Challenge. Abgerufen 19. Mai, 2009.
- ^ "Android Developer Challenge". Google -Code. Abgerufen 11. Januar, 2008.
- ^ Chu, Eric (6. Oktober 2009). "ADC 2 Runde 1 Punkte vollständig". Android Developers Blog. Archiviert Aus dem Original am 1. November 2009. Abgerufen 3. November, 2009.
- ^ "ADC 2 Gesamtsieger". Android Developer Challenge. Archiviert Aus dem Original am 4. Januar 2011. Abgerufen 5. Dezember, 2010.
- ^ Kharif, Olga (30. November 2009). "Android Developer Challenge 2 -Gewinner kündigten“. Arbeitswoche. Abgerufen 5. Dezember, 2010.
- ^ "Dream Android Development". XDA-Entwickler Forum. Abgerufen 11. September, 2009.
- ^ "Rooting: Vor- und Nachteile". ITCSE -Forum. Archiviert von das Original am 29. November 2014. Abgerufen 21. September, 2013.
- ^ "Android 2.1 von Motorola Droid auf G1 portiert". Volt Mobile. 10. März 2010. archiviert von das Original am 31. Mai 2011. Abgerufen 13. Mai, 2011.
- ^ Wimberly, Taylor (24. September 2009). "Cyanogenmod in Schwierigkeiten?". Android und ich. Archiviert Aus dem Original am 3. Oktober 2009. Abgerufen 26. September, 2009.
- ^ Morrill, Dan (25. September 2009). "Ein Hinweis auf Google -Apps für Android". Android Developers Blog. Archiviert Aus dem Original am 25. Oktober 2009. Abgerufen 26. September, 2009.
- ^ "Der aktuelle Zustand..." Cyanogenmod Android ROM. 27. September 2009. archiviert von das Original am 3. November 2009. Abgerufen 27. September, 2009.
- ^ Van Gurp, Jilles (13. November 2007). "Google Android: Erste Eindrücke und Kritik". Javalobby. Archiviert von das Original am 28. August 2008. Abgerufen 7. März, 2009.
Ehrlich gesagt verstehe ich nicht, warum Google beabsichtigt, die große Menge an vorhandener Implementierung zu ignorieren. Es scheint mir ein schlechter Fall von "nicht erfunden" zu sein. Letztendlich wird dies die Akzeptanz verlangsamen. Es gibt bereits zu viele Java -Plattformen für die mobile Welt und dies ist noch ein weiterer
- ^ "Myriads neuer J2android -Konverter treibt Android -Anwendungen Goldrausch an.". 19. März 2010. archiviert von das Original am 4. Juli 2011. Abgerufen 13. Mai, 2011.
- ^ Frulhlinger, Josh (23. März 2010). "J2android hofft, dass Sie nicht wissen, dass Android Java basiert". JavaRld. Abgerufen 2020-07-13.
Andererseits denken Sie vielleicht, dass dies eine Art Betrug ist, das sich an Entwickler richtet, die die Art der Plattform, auf die sie abzielen, nicht wirklich verstehen. Meine größte Beschwerde ist, dass Sie denken würden, dass Mikael Ricknäs, der IDG -Nachrichten -Service -Reporter, der die erste Geschichte schrieb, die oben verlinkt ist (die sich für dasselbe Unternehmen, das JavaWorld veröffentlicht, zumindest die Beziehung zwischen Java und Android bezieht, zu Machen Sie die Seltsamkeit dieser Ankündigung klar.
- ^ Frulhlinger, Josh (31. März 2010). "Myriad CTO: J2android bewegt Midlets in" Beautiful "Android Framework". JavaRld. Abgerufen 2020-07-13.
Wir müssen abwarten und genau sehen, wie viel Pickup J2android tatsächlich sieht. Das Tool ist noch nicht auf dem offenen Markt erhältlich. Während Schillings optimistisch darüber sprach, "1.000 Midlets an einem Nachmittag umzuwandeln", arbeiten sie im Moment mit ein paar Anbietern zusammen, um ihre Rückenkataloge zu verwandeln. Diejenigen unter Ihnen da draußen, in der Hoffnung, zu lernen, wie man Android -Code schreibt, muss also eine Weile warten.
- ^ Paul, Ryan (19. Dezember 2007). "Entwicklung von Apps für Google Android: Es ist eine gemischte Tasche". ARS Technica. Archiviert Aus dem Original am 20. Dezember 2007. Abgerufen 19. Dezember, 2007.
- ^ Morrill, Dan (18. Januar 2008). "Sie können keine Perfektion beeilen, aber jetzt können Sie Fehler dagegen einreichen". Android Developers Blog. Abgerufen 3. September, 2009.
- ^ Morrison, Scott (19. Dezember 2007). "Pannenfehler Google's Android -Software". Das Wall Street Journal. Abgerufen 19. Dezember, 2007.
- ^ "Schlange". Android Freeware. Abgerufen 14. Oktober, 2021.
- ^ "Erste Android -Anwendung - Schlange". Mobile2day. 14. November 2007. archiviert von das Original am 11. Mai 2008. Abgerufen 7. Januar, 2008.
- ^ Metz, Cade (14. Juli 2008). "Google spielt sich mit Android SDK zusammen". Das Register. Archiviert Aus dem Original am 6. Oktober 2008. Abgerufen 23. Oktober, 2008.
- ^ "Android - Ein Open -Handset -Allianzprojekt: Aktualisieren des SDK". Archiviert von das Original am 13. September 2008. Abgerufen 24. Oktober, 2008.
- ^ "Andere SDK -Veröffentlichungen". Android -Entwickler. Abgerufen 2. September, 2009.
- ^ "SDK -Archive". Android -Entwickler.
- ^ "Google Play trifft 1 Million Apps". Massig. 24. Juli 2013.
- ^ "Android -App -Statistiken". Archiviert von das Original am 2. Januar 2011. Abgerufen 31. Dezember, 2010.
- ^ Leena Rao (14. April 2011). "Google: 3 Milliarden Android -Apps installiert; lädt 50 Prozent aus dem letzten Quartal herunter". Techcrunch. Archiviert Aus dem Original am 25. April 2011. Abgerufen 13. Mai, 2011.
- ^ "Entwicklerökonomie 2011". Archiviert von das Original am 29. September 2013. Abgerufen 8. Juli, 2011.
- ^ "Das weltweite Smartphone -Volumes bleibt 2018 unterbrochen, bevor sie 2019 und darüber hinaus zum Wachstum zurückkehren, so IDC". idc.com. 30. Mai 2018. archiviert von das Original am 17. Oktober 2019. Abgerufen 6. Juni, 2018.
Literaturverzeichnis
- Ed, Burnette (13. Juli 2010). Hallo Android: Einführung der mobilen Entwicklungsplattform von Google (3. Aufl.). Pragmatischer Bücherregal. ISBN 978-1-934356-56-2.
- Ableson, Frank; Sen, Robi; King, Chris (Januar 2011). Android in Aktion, zweite Ausgabe (2. Aufl.). Manning. ISBN 978-1-935182-72-6.
- CONDER, SHANE; Darcey, Lauren (24. Juli 2012). Android Wireless Anwendungsentwicklung Band II: Erweiterte Themen (3. Aufl.). Addison-Wesley Professional. ISBN 978-0-321-81384-8.
- Murphy, Mark (26. Juni 2009). Anfänger Android (1. Aufl.). Apress. ISBN 978-1-4302-2419-8.
- Meier, Reto (März 2010). Professionelle Android 2 -Anwendungsentwicklung (1. Aufl.). Wrox Press. ISBN 978-0-470-56552-0.
- Haseman, Chris (21. Juli 2008). Android Essentials (1. Aufl.). Apress. ISBN 978-1-4302-1064-1.
- Clifton, Ian (3. August 2012). Das Wesentliche von Android Application Development Development LiveLessons (Video -Training) (1. Aufl.). Addison-Wesley Professional. ISBN 978-0-13-299658-7.