Farbe der Netzwerkverbindungen: Unterschied zwischen den Versionen

K
Überschrift "Technische Umsetzung" fängt jetzt mit großem Buchstaben an
(→‎Siehe auch: erweitert um 4G oder LTE)
K (Überschrift "Technische Umsetzung" fängt jetzt mit großem Buchstaben an)
 
(3 dazwischenliegende Versionen von 2 Benutzern werden nicht angezeigt)
Zeile 4: Zeile 4:
Das Farbspiel ist selbstverständlich nicht bedeutungslos und hat einen Hintergrund: Ist das Symbol blau (bzw. grün), so besteht eine aktive, unbeschränkte Internetverbindung (unabhängig, ob diese über WLAN oder einem mobilen Netzwerk hergestellt wurde). Ist das Symbol hingegen grau, so besteht zwar eine Verbindung mit einem Netzwerk, allerdings konnte keine Internetverbindung hergestellt werden, oder es wurde eine Einschränkung erkannt (bspw. muss sich der Nutzer für das WLAN-Netz authentifizieren, o.ä.), jedenfalls '''kann''' es Probleme bei der Kommunikation mit dem Internet geben.
Das Farbspiel ist selbstverständlich nicht bedeutungslos und hat einen Hintergrund: Ist das Symbol blau (bzw. grün), so besteht eine aktive, unbeschränkte Internetverbindung (unabhängig, ob diese über WLAN oder einem mobilen Netzwerk hergestellt wurde). Ist das Symbol hingegen grau, so besteht zwar eine Verbindung mit einem Netzwerk, allerdings konnte keine Internetverbindung hergestellt werden, oder es wurde eine Einschränkung erkannt (bspw. muss sich der Nutzer für das WLAN-Netz authentifizieren, o.ä.), jedenfalls '''kann''' es Probleme bei der Kommunikation mit dem Internet geben.


== technische Umsetzung ==
Auch wenn die Unterscheidung der Farbgebung der Netzwerk-Symbole im [[AOSP]] enthalten ist, verändern einige Hersteller das User Interface, wobei die Farbgebung verändert oder die Unterscheidung komplett weg gelassen werden kann. So unterscheidet [[HTC Sense|HTC's Sense]] nur zwischen einer hergestellten Internetverbindung (weiß) und einem dabei festgestellten Problem (grau). Eine zusätzliche Authentifikation oder andere Einschränkung ist hier nicht in der Statusleiste ersichtlich.
Die Statusbar ist Teil der SystemUI.apk, welche glücklicherweise Teil des AOSP Projektes ist und der Source Code somit öffentlich zur Verfügung steht.<ref>{{Internetquelle|titel = platform/frameworks/base - Git at Google|url = https://android.googlesource.com/platform/frameworks/base/|zugriff = 2015-11-29|werk = android.googlesource.com}}</ref> Die Farbgebung betrifft hierbei mehrere Symbole, zum Verständnis der Umsetzung ziehen wir hier das Symbol für die WiFi (WLAN) Verbindung heran. Die möglichen Symbole werden dabei in der Klasse WifiIcons definiert:<ref>{{Internetquelle|titel = android/platform_frameworks_base|url = https://github.com/android/platform_frameworks_base/blob/7de7e0b0dd61acba813dec3a07d29f1d62026470/packages/SystemUI/src/com/android/systemui/statusbar/policy/WifiIcons.java#L22-L33|zugriff = 2015-11-29|werk = GitHub}}</ref>
 
== Technische Umsetzung ==
Die Statusbar ist Teil der SystemUI.apk, welche Teil des AOSP Projektes ist und der Source Code somit öffentlich zur Verfügung steht.<ref>{{Internetquelle|titel = platform/frameworks/base - Git at Google|url = https://android.googlesource.com/platform/frameworks/base/|zugriff = 2015-11-29|werk = android.googlesource.com}}</ref> Die Farbgebung betrifft hierbei mehrere Symbole, zum Verständnis der Umsetzung ziehen wir hier das Symbol für die WiFi (WLAN) Verbindung heran. Die möglichen Symbole werden dabei in der Klasse WifiIcons definiert:<ref>{{Internetquelle|titel = android/platform_frameworks_base|url = https://github.com/android/platform_frameworks_base/blob/7de7e0b0dd61acba813dec3a07d29f1d62026470/packages/SystemUI/src/com/android/systemui/statusbar/policy/WifiIcons.java#L22-L33|zugriff = 2015-11-29|werk = GitHub}}</ref>
<syntaxhighlight lang="java">
<syntaxhighlight lang="java">
static final int[][] WIFI_SIGNAL_STRENGTH = {
static final int[][] WIFI_SIGNAL_STRENGTH = {
Zeile 21: Zeile 23:
</syntaxhighlight>
</syntaxhighlight>


Das Array <code>WIFI_SIGNAL_STRENGTH</code> hält dabei zwei weitere Arrays (auch als multidimensionales Array bezeichnet), die die einzelnen Symbole definieren (Array 1 (bzw. 0 bei korrekter Zählweise), ohne '''_fully''' im Namen, sind dabei die "grauen" Symbole, Array 2 (bzw. 1), mit '''_fully''' im Namen, die blauen). Die Icons selbst liegen als [http://developer.android.com/intl/vi/reference/android/graphics/drawable/VectorDrawable.html VectorDrawable] vor,[1] und können am einfachsten mit dem [[Android Studio]] visualisiert werden. Genutzt werden die Icons in der Klasse WifiSignalController, der Updates für die WiFi-Signale verarbeitet:<ref>{{Internetquelle|titel = android/platform_frameworks_base|url = https://github.com/android/platform_frameworks_base/blob/d59921149bb5948ffbcb9a9e832e9ac1538e05a0/packages/SystemUI/src/com/android/systemui/statusbar/policy/WifiSignalController.java#L59|zugriff = 2015-11-29|werk = GitHub}}</ref>
Das Array <code>WIFI_SIGNAL_STRENGTH</code> hält dabei zwei weitere Arrays (auch als multidimensionales Array bezeichnet), die die einzelnen Symbole definieren (Array 1 (bzw. 0 bei korrekter Zählweise), ohne '''_fully''' im Namen, sind dabei die "grauen" Symbole, Array 2 (bzw. 1), mit '''_fully''' im Namen, die blauen). Die Icons selbst liegen als [http://developer.android.com/intl/vi/reference/android/graphics/drawable/VectorDrawable.html VectorDrawable] vor, und können am einfachsten mit dem [[Android Studio]] visualisiert werden. Genutzt werden die Icons in der Klasse WifiSignalController, der Updates für die WiFi-Signale verarbeitet:<ref>{{Internetquelle|titel = android/platform_frameworks_base|url = https://github.com/android/platform_frameworks_base/blob/d59921149bb5948ffbcb9a9e832e9ac1538e05a0/packages/SystemUI/src/com/android/systemui/statusbar/policy/WifiSignalController.java#L59|zugriff = 2015-11-29|werk = GitHub}}</ref>
<syntaxhighlight lang="java">
<syntaxhighlight lang="java">
mCurrentState.iconGroup = mLastState.iconGroup = new IconGroup(
mCurrentState.iconGroup = mLastState.iconGroup = new IconGroup(
Autopatrol, Moderator
1.304

Bearbeitungen