Android: Unterschied zwischen den Versionen
Codica (Diskussion | Beiträge) Markierungen: Mobile Bearbeitung Mobile Web-Bearbeitung |
Codica (Diskussion | Beiträge) |
||
(11 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt) | |||
Zeile 11: | Zeile 11: | ||
Siehe nun [[Telefon#Handymodelle]] | Siehe nun [[Telefon#Handymodelle]] | ||
+ | === Android-Update-Garantie === | ||
+ | |||
+ | Heutzutage ist ein wesentlicher Unterschied zwischen den verschiedenen Android-Geräten, wie lange man dafür Updates erhält. | ||
+ | |||
+ | Siehe dazu | ||
+ | * https://www.nextpit.de/wie-lange-android-updates | ||
Zeile 98: | Zeile 104: | ||
* https://snapdrop.net | * https://snapdrop.net | ||
+ | * https://fex.rus.uni-stuttgart.de/index.html | ||
* https://magic-wormhole.readthedocs.io/en/latest/welcome.html | * https://magic-wormhole.readthedocs.io/en/latest/welcome.html | ||
** https://github.com/LeastAuthority/Transfer | ** https://github.com/LeastAuthority/Transfer | ||
Zeile 159: | Zeile 166: | ||
* Call a Bike | * Call a Bike | ||
* Flinkster | * Flinkster | ||
+ | |||
+ | Siehe auch | ||
+ | * [[Programmierprojekte#Verkehr]] | ||
=== GPS === | === GPS === | ||
Zeile 181: | Zeile 191: | ||
== App-Entwicklung == | == App-Entwicklung == | ||
− | == Android Debugging Bridge - ADB == | + | === Android Debugging Bridge - ADB === |
Wenn | Wenn | ||
Zeile 190: | Zeile 200: | ||
=== Entwicklungsumgebungen === | === Entwicklungsumgebungen === | ||
+ | * Android Studio (basiert auf IntelliJ) | ||
+ | |||
* Eclipse | * Eclipse | ||
** ADB | ** ADB | ||
** Android SDK (s.u.) | ** Android SDK (s.u.) | ||
− | |||
* Netbeans Android Plugin | * Netbeans Android Plugin | ||
** [https://forums.netbeans.org/topic51543.html Installationsanleitung für das Android SDK und das Netbeans Android Plugin] | ** [https://forums.netbeans.org/topic51543.html Installationsanleitung für das Android SDK und das Netbeans Android Plugin] | ||
Zeile 203: | Zeile 214: | ||
* [http://www.android-ide.com/ AIDE] - Android IDE | * [http://www.android-ide.com/ AIDE] - Android IDE | ||
* [http://beta.appinventor.mit.edu/ AppInventor vom MIT] - ein visuelles Tool zur Erstellung von Smartphone-Apps | * [http://beta.appinventor.mit.edu/ AppInventor vom MIT] - ein visuelles Tool zur Erstellung von Smartphone-Apps | ||
+ | |||
+ | ==== Android Studio ==== | ||
+ | |||
+ | ===== Installation auf Ubuntu / Linux Mint ===== | ||
+ | |||
+ | * [https://developer.android.com/studio Download von Android Studio] | ||
+ | * Entpacken z.B. nach ~/Anwendungen/android-studio | ||
+ | * Ggf. bestimmte Pakete installieren | ||
+ | ** lt. [https://wiki.ubuntuusers.de/Android_Studio/ ubuntuusers]: | ||
+ | sudo apt-get install libcanberra-gtk-module android-sdk | ||
+ | * Im BIOS VT-x aktivieren | ||
+ | ** Siehe https://wiki.ubuntuusers.de/KVM/ | ||
+ | |||
+ | * Man kann das mitgelieferte JDK als JAVA-Umgebung wählen oder vorher JAVA_HOME auf ein JDK-Verzeichnis setzen. Ein vorinstalliertes JDK 8 funktionierte bei mir nicht, besser das "Embedded JDK" nutzen. Wer trotzdem will: | ||
+ | export JAVA_HOME="$(dirname $(dirname $(ls -l /etc/alternatives/javac | cut -f 12 -d ' ') ) )" | ||
+ | |||
+ | * Android Studio starten mit | ||
+ | ~/Anwendungen/android-studio/bin/studio.sh | ||
+ | |||
+ | * Mit Tools -> Create Desktop Entry einen Menü-Eintrag für Android Studio erstellen | ||
+ | * Mit Tools -> SDK Manager das korrekte SDK bereit stellen (inklusive passendes System Image) | ||
+ | * Mit Tools -> Device Manager ein virtuelles Gerät erstellen. | ||
+ | * Um physisches Gerät als Testgerät zu nutzen | ||
+ | ** auf dem Gerät | ||
+ | *** Entwickleroptionen durch 7-maliges Klicken auf Buildnummer aktivieren | ||
+ | *** In Entwickleroptionen USB-Debugging aktivieren | ||
+ | ** auf dem Host-PC | ||
+ | *** den [https://developer.android.com/studio/run/device User der Gruppe plugdev] hinzufügen | ||
+ | *** die [https://developer.android.com/studio/run/device udev-Regeln durch Installation von android-sdk-platform-tools-common] schaffen | ||
+ | apt-get install android-sdk-platform-tools-common | ||
=== Android SDK === | === Android SDK === | ||
Zeile 241: | Zeile 282: | ||
==== Intents ==== | ==== Intents ==== | ||
+ | |||
+ | ===== Neustart nach Boot ===== | ||
+ | Siehe | ||
+ | * https://stackoverflow.com/questions/7690350/android-start-service-on-boot | ||
+ | * https://medium.com/swlh/all-about-auto-start-foreground-service-in-android-8bba7569123e | ||
+ | * https://www.tutorialspoint.com/how-to-start-an-service-at-boot-time-in-android-app | ||
+ | * https://developer.android.com/reference/android/content/Intent#ACTION_BOOT_COMPLETED | ||
+ | |||
===== Dateiauswahl-Intent ===== | ===== Dateiauswahl-Intent ===== | ||
* [http://android-er.blogspot.de/2011/03/pick-file-using-intentactiongetcontent.html Eine Datei auswählen, ohne selbst einen Dateimanager zu schreiben] | * [http://android-er.blogspot.de/2011/03/pick-file-using-intentactiongetcontent.html Eine Datei auswählen, ohne selbst einen Dateimanager zu schreiben] |
Aktuelle Version vom 13. November 2024, 12:49 Uhr
Android ist das von Google auf Basis von Linux entwickelte Betriebssystem für mobile Geräte.
Einführungen
Android-Hardware
Siehe nun Telefon#Handymodelle
Android-Update-Garantie
Heutzutage ist ein wesentlicher Unterschied zwischen den verschiedenen Android-Geräten, wie lange man dafür Updates erhält.
Siehe dazu
5-Zoll-Smartphones
- Samsung S4, vorgestellt in 2013 als damaliges High-End-Smartphone
- Samsung Galaxy Note, 5", 1280x800 Pixel, 147x83x10 mm
- LG Optimus Vu, 5", 1024x768 Pixel, 140x90x8,5 mm
4,5-Zoll Smartphone
- LG Optimus True HD LTE (P936), 1 GB RAM, 160 €, ausgeliefert mit Android 2.3.6, aber mit Cyanomodgen 10.2 versehbar
- LG Prada 3.0
Nicht mehr hergestellt
SmartWatches
- No.1 D3 Smartwatch, sehr günstige Smartwatch, die auch eigenen SIM-Kartenslot besitzt. Auf diese Uhr kann man jedoch keine eigenen Apps installieren.
- E07 Smartwatch - schönes Design für günstigen Preis.
Alternativen zu Android SmartWatches
- PineTime (offene Hardware für ca. 25 $) mit InfiniTime-Betriebssystem (Open Source)
- Herzfrequezsensor, Accelerometer, Bluetooth 5, IPS-Touchdisplay
- 3 Tage ohne Aufladen
- Bangle js 2 für 120 €
- Herzfrequenzsensor, GPS, Glonass, Accelerometer, Luftdruck, Temperatur,
- Vibration,
- Bluetooth LE,
- programmierbar mit JavaScript
- 2 Wochen ohne Aufladen
CustomROMs
Android kommt mit den GoogleApps. CustomROMs wie LineageOS, AOSP helfen bei der DeGoogleization.
Siehe auch
Android Einstellungen
Selbst erstellte SSL-Zertifikate importieren
Siehe SSL#Importieren_nach_Android
Android Apps
Netzwerk
- Fing
- Ning
WebDAV
- WebDAV-Server
Samba
SSH
Bluetooth
Wifi
Datenaustausch
- DropBox
- DropSync
- Google Drive
- ES File Explorer
- File Explorer
AirDrop Ersatz
- https://snapdrop.net
- https://fex.rus.uni-stuttgart.de/index.html
- https://magic-wormhole.readthedocs.io/en/latest/welcome.html
Office
- Email:
- K9-Mail
- freie GnuPG-Erweiterung erhältlich: APG
- R2Mail2 besitzt standardmäßig S/MIME-Unterstützung, kostenlos aber nur für 10 Mails
- K9-Mail
- Kalender
- Smooth Calendar (Widget für Home Screen)
- PDF-Anzeige: APV PDFViewer
- Go Contacts
- AK Notepad (catch.com)
Browser
- Opera Mini
- Dolphin
Projektmanagement
- Timeli, kostenlos, mehrere Projekte mit mehreren Aufgaben, Zeitstrahl
- Kanban Board, einfach, kostenlos
- SimpleMind mind mapping
Entwicklung
- AIDE - vollständige Android IDE
- TextWarrior, ein OpenSource-Texteditor, der ein Bildschirm-Pad zum Verschieben des Cursors mitbringt.
- Jota Text Editor
- PHP Manual
- ConnectBot
- SSHDroid
- Android VNC Viewer
- PigFish für das ZTE Blade
- Universal Androot
Finanzen
- Expense Manager - kann benutzt werden, um eine Übersicht über seine Ausgaben zu erhalten
Gruppenabrechnungen
- ABCBA (kostenlos, aber nicht frei, eingeschränkter Funktionsumfang) ist eine App um Ausgaben einer Gruppe z.B. bei einer gemeinsamen Reise zu verwalten. Es bietet Export u.a. nach Excel und PDF. Bei den einzelnen Ausgaben können die Gruppenmitglieder unterschiedlich gewichtet werden.
- Tricount erlaubt das Bearbeiten der Daten über Web, Android etc. ohne Anmeldung auf dem Tricount-Server.
Verkehr
- DB RailNavigator
- DB Ticket
- Öffi
- Call a Bike
- Flinkster
Siehe auch
GPS
- NAVfree
- OpenGPSTracker
OSMAnd
Mit OSMAnd kann man auch einem GPS-Track folgen. Dazu muss man die GPX-Datei in /sdcard/osmand/tracks
speichern und dann in OSMAnd im Menü Navigation->GPX-Track folgen auswählen.
Multimedia
- Siehe MPD#Android
- XBMC remote
BabyPhone
- BabyMonitor
- Den Source Code einer Open Source-App eines Babyfons findet sich als babyalarm auf Sourceforge's git.
App-Entwicklung
Android Debugging Bridge - ADB
Wenn
adb devices
anzeigt, dass es keine Berechtigung (no permissions) auf ein Gerät hat, kann das daran liegen, dass der adb-Server nicht genügend Berechtigungen hat. Dann hilft
adb kill-server sudo adb start-server
Entwicklungsumgebungen
- Android Studio (basiert auf IntelliJ)
- Eclipse
- ADB
- Android SDK (s.u.)
- Netbeans Android Plugin
- AIDE - Android IDE
- AppInventor vom MIT - ein visuelles Tool zur Erstellung von Smartphone-Apps
Android Studio
Installation auf Ubuntu / Linux Mint
- Download von Android Studio
- Entpacken z.B. nach ~/Anwendungen/android-studio
- Ggf. bestimmte Pakete installieren
- lt. ubuntuusers:
sudo apt-get install libcanberra-gtk-module android-sdk
- Im BIOS VT-x aktivieren
- Man kann das mitgelieferte JDK als JAVA-Umgebung wählen oder vorher JAVA_HOME auf ein JDK-Verzeichnis setzen. Ein vorinstalliertes JDK 8 funktionierte bei mir nicht, besser das "Embedded JDK" nutzen. Wer trotzdem will:
export JAVA_HOME="$(dirname $(dirname $(ls -l /etc/alternatives/javac | cut -f 12 -d ' ') ) )"
- Android Studio starten mit
~/Anwendungen/android-studio/bin/studio.sh
- Mit Tools -> Create Desktop Entry einen Menü-Eintrag für Android Studio erstellen
- Mit Tools -> SDK Manager das korrekte SDK bereit stellen (inklusive passendes System Image)
- Mit Tools -> Device Manager ein virtuelles Gerät erstellen.
- Um physisches Gerät als Testgerät zu nutzen
- auf dem Gerät
- Entwickleroptionen durch 7-maliges Klicken auf Buildnummer aktivieren
- In Entwickleroptionen USB-Debugging aktivieren
- auf dem Host-PC
- den User der Gruppe plugdev hinzufügen
- die udev-Regeln durch Installation von android-sdk-platform-tools-common schaffen
- auf dem Gerät
apt-get install android-sdk-platform-tools-common
Android SDK
Siehe
Android Emulator
Mit dem Android SDK erhält man auch einen Android-Emulator. Allerdings sollte man das x86-Image nehmen, da die ARM-Emulation vergleichsweise langsam ist.[1]
Signierung
Source Code
Stift / Pen - Programmierung
Samsung bietet eine S Pen - API zum Programmieren des Stifts z.B. eines Samsung Galaxy Note 3 Neo.
Allerdings unterstützt auch "normales" Android seit Version 4.0 den Stift / Stylus, siehe
Threading
Für die Kommunikation mit dem User Interface helfen zum einen die Klasse Handler
und zum anderen die Klasse AsyncTask
Siehe zu AsyncTask:
Siehe zu Handler:
Siehe zu Threads in Android allgemein und zur Unterscheidung von Prozessen:
Intents
Neustart nach Boot
Siehe
- https://stackoverflow.com/questions/7690350/android-start-service-on-boot
- https://medium.com/swlh/all-about-auto-start-foreground-service-in-android-8bba7569123e
- https://www.tutorialspoint.com/how-to-start-an-service-at-boot-time-in-android-app
- https://developer.android.com/reference/android/content/Intent#ACTION_BOOT_COMPLETED
Dateiauswahl-Intent
Dateien versenden etc.
Siehe
- Registrieren der eigenen App für Dateien und Email-Anhänge.
- Öffnen einer Datei, ohne deren Inhalt zu kennen. (Kürzere Version), siehe auch die Alternative
- Öffnen einer Datei, ohne deren Inhalt zu kennen. (Längere Version)
In Android 7.1 Nougat hat sich das Berechtigungskonzept zum Teilen von Dateien geändert. Siehe
- https://proandroiddev.com/sharing-files-though-intents-are-you-ready-for-nougat-70f7e9294a0b
- https://inthecheesefactory.com/blog/how-to-share-access-to-file-with-fileprovider-on-android-nougat/en
Testhilfsmittel
Appium ist ein Testwerkzeug, mit dem man Android-Apps in ähnlicher Weise wie Webseiten mit Selenium testen kann.
- ↑ Vgl. https://jolicode.com/blog/speed-up-your-android-emulator mit Anleitung zur Beschleunigung des Emulators.