11 Reaktionen

Änderung des User-Agents von Firefox 41+ für Android

Geschätzte Lesedauer:

Entwickler, welche User-Agent-Sniffing betreiben, müssen sich auf eine Änderung des User-Agents von Firefox für Android erstellen. Diesen wird Mozilla aller Voraussicht nach mit Firefox 41 ändern.

Browser senden bei jedem Seitenaufruf einen sogenannten User-Agent an die jeweilige Webseite. Dieser beinhaltet Informationen über das verwendete Betriebssystem, den Browser sowie die Browserversion und wird von Webseiten häufig benutzt, um unterschiedliche Versionen einer Webseite an Systeme mit unterschiedlichen Fähigkeiten bereitzustellen. Um die Kompatibilität mit Webseiten zu verbessern, wird Mozilla voraussichtlich ab Version 41 einen geänderten User-Agent in Firefox für Android senden, welcher zusätzlich die verwendete Android-Version beinhaltet. Damit ist der User-Agent nach folgendem Schema aufgebaut:

Mozilla/5.0 (Android <Android version>; Mobile; rv:<Gecko version>) Gecko/<Gecko version> Firefox/<Gecko version>

Dabei wird es noch eine Besonderheit geben: auf Geräten mit einer Android-Version kleiner als 4.0 wird Firefox als Versionsnummer Android 4.4 angeben. Bei Verwendung von Android 4.0 und höher wird die reale Android-Version angegeben.

Dieser Artikel wurde von Sören Hentzschel verfasst.

Sören Hentzschel ist Webentwickler aus Salzburg. Auf soeren-hentzschel.at informiert er umfassend über Neuigkeiten zu Mozilla. Außerdem ist er Betreiber von camp-firefox.de, der ersten Anlaufstelle im deutschsprachigen Raum für Firefox-Probleme aller Art. Weitere Projekte sind firefox.agenedia.com, mozilla.de, firefoxosdevices.org sowie sozone.de.

10 Kommentare - bis jetzt!

Eigenen Kommentar verfassen
  1. Roman
    schrieb am :

    Das mit den Versionsnummern <4.0 hat, nach meinen Nachforschungen, mit der Art zu tun, wie z.B. ein Video abgespielt wird.
    Unter Android gibt es sowohl den browsereigenen Inline-Player, als auch die Möglichkeit, einen externen zu nehmen. Das wird anhand der Androidversion entschieden. Da das für den FF aber egal ist, wird einfach immer die Version 4.4+ angegeben. Somit wird genanntes Video immer im Browser abgespielt.

    (Quelle)

    (Bin offen für jegliche Korrektur, falls ich falsch liegen sollte 😉 )

    Roman

  2. tristate
    schrieb am :

    Ich würde mir eher wünschen, dass diese Agents gekürzt und eingestampft werden auf absehbare Zeit.
    Es ist eigentlich völlig unerheblich ob es Edge, Safari oder Firefox ist und welches Betriebssystem dahinter ist.
    Kann man nicht anderweitig rausfinden ob gewisse Funktionen vom Browser bereitgestellt werden ohne irgendwelche Browserweichen die am Useragent hängen?

  3. Sören Hentzschel Verfasser des Artikels
    schrieb am :

    Und dann hätte man auch überhaupt keine Anhaltspunkte mehr, was die Verbreitung der Browser betrifft. Ich denke nicht, dass das so großartig wäre. 😉 User-Agent-Sniffing ist sicherlich nicht die tollste Methode, aber ich weiß nicht, ob Feature-Erkennung immer gut genug ist.. Nehmen wir Firefox und die Media Source Extensions. Als Mozilla das erstmals für YouTube aktiviert hat und YouTube gleichzeitig HTML5 zum Standard für Firefox-Nutzer gemacht hat, gab es große Stabilitätsprobleme, eine Feature-Erkennung war hier nicht ausreichend, Google musste Firefox erkennen und wieder Flash für Firefox-Nutzer bevorzugen, bis die Probleme behoben waren (was sie mittlerweile sind).

  4. schrieb am :

    Aber warum springt man dann bei der Android Version z.B. von 3.0 auf 4.4 und nicht zumindest nur von 3.0 auf 4.0? Weil bei Android 4.1 wird ja auch 4.1 zurückgegeben, so wie ich das jetzt verstanden habe.

    @tristate:
    Ich verstehe durchaus die Bedenken bezüglich Datenschutz, das sehe ich vom Grundgedanken her ähnlich, sofern das dein Gedanke hierbei war. Aber letztlich denke ich, dass dieser String im Vergleich zu anderen Dingen nur sehr eingeschränkt ein Problem darstellt, da er weniger eindeutig (also bei vielen Nutzern gleich) ist, als viele andere Informationen. Deutlich kritischer ist wahrscheinlich die Ausgabe der installierten Plug-ins, die wesentlich User-spezifischer ist. Darüber hinaus gibt es noch zahlreiche weitere Methoden einen Nutzer zu verfolgen z.B. per Feature Detection (durch die konstanten Entwicklungen an „HTML5“ wette ich dass nahezu jeder Browser mit Version erkannt werden kann) oder die zahlreichen Speicherarten wie Cookies, LocalStorage, IndexedDB und Web SQL.
    Zusammenfassend finde ich deshalb man sollte diese Information schon alleine wegen der Browser-Statistiken nicht entfernen. Die Parteien, die den User verfolgen möchten, können und werden das mit einer Reihe an anderen Möglichkeiten eh tun.

  5. Anon
    schrieb am :

    Ich würde mir eher wünschen, dass diese Agents gekürzt und eingestampft werden auf absehbare Zeit.

    Genau!

  6. Sören Hentzschel Verfasser des Artikels
    schrieb am :

    Und was ist der Alternativvorschlag für Probleme und Fragestellungen wie die in meinem letzten Kommentar genannten?

  7. Sören Hentzschel Verfasser des Artikels
    schrieb am :

    Aber warum springt man dann bei der Android Version z.B. von 3.0 auf 4.4 und nicht zumindest nur von 3.0 auf 4.0? Weil bei Android 4.1 wird ja auch 4.1 zurückgegeben, so wie ich das jetzt verstanden habe.

    Ich denke, das kommt noch am Ehesten einer Erklärung nahe:
    https://bugzilla.mozilla.org/show_bug.cgi?id=1169772#c21

    Wieso sich Firefox dann nicht bei 4.0 bis 4.3 ebenfalls als 4.4 ausgibt: keine Ahnung.

  8. schrieb am :

    Ich würde mir eher wünschen, dass diese Agents gekürzt und eingestampft werden auf absehbare Zeit.

    Genau!

    In einem „optimalen Internet“, in dem alles komplett ohne Bugs und ohne unterschiedlicher/sich ändernder Browser-Implementierungen abläuft und nur noch die Geschwindigkeit und das User-Interface des Browsers ein bisschen unterschiedlich sind, wäre das technisch wahrscheinlich möglich. Aber das wird in den nächsten 10 Jahren (und vermutlich darüber hinaus) wohl eher nicht passieren, da schon die Art und Weise wie Webstandards entstehen und Browser-Hersteller involviert sind das verhindern. (Bei neuen Standards ist das vermutlich auch gar nicht so schlecht, aber das ist ein anderes Thema.)

    Ein anderes Einsatzbeispiel: Es gibt soweit ich weiß keine andere Möglichkeit, die in allen Browsern funktioniert, um zu erkennen ob das Endgerät z.B. ein Smartphone oder ein Desktop-Computer ist. Gut, im Normalfall braucht man das nicht zu wissen, aber beispielsweise bestimmen manche Webseiten ob der SMS- oder WhatsApp-Share-Button eingeblendet wird oder nicht. Das ist aber natürlich eine Sache, bei der man mal eine Möglichkeit standardisieren könnte, um entweder den Gerätetyp oder die unterstützen Protokolle (sms://, whatsapp://) abfragen zu können.

    Ich denke, das kommt noch am Ehesten einer Erklärung nahe:
    https://bugzilla.mozilla.org/show_bug.cgi?id=1169772#c21

    Ah, Danke, damit macht 4.4 schon mal Sinn. Beim Rest tappt man zwar weiter im dunklen, aber sie werden sich schon etwas dabei gedacht haben ;).
    Vielleicht denken Sie dass die Verbreitung von Android < 4.0 bei Firefox-Nutzern mittlerweile relativ gering ist und deshalb die fehlende Differenzierung dort eh nur wenig ins Gewicht fällt. Gut, ist jetzt aber auch nur eine Überlegung und eigentlich ebenso keine abschließende Begründung :D.

  9. Ralf-Dieter
    schrieb am :

    1) Frage:
    Kann ich diesen neuen User-Argent abstellen?

    2) Frage:Gibts diesen User-Argent auch für die Nightly-Release 41.0a1 und 42.0a1 oder nur für die Finalversion Firefox 41?

    3) Frage:
    Funktioniert dieser User-Argent auch im Privatmodus und beim Do not Tracking oder hat es keinen Einfluß darauf?

  10. Sören Hentzschel Verfasser des Artikels
    schrieb am :

    Kann ich diesen neuen User-Argent abstellen?

    Gegenfrage: wieso solltest du das wollen? Schlechtere Kompatibilität mit Webseiten?

    Frage:Gibts diesen User-Argent auch für die Nightly-Release 41.0a1 und 42.0a1 oder nur für die Finalversion Firefox 41?

    Das betrifft natürlich alle Release-Kanäle.

    Funktioniert dieser User-Argent auch im Privatmodus und beim Do not Tracking oder hat es keinen Einfluß darauf?

    Das hat überhaupt nichts damit zu tun, ein User-Agent wird immer gesendet, in jedem Browser, bei jeder Anfrage. (mal den Fall außen vorgelassen, dass man seinen User-Agent manipuliert, was einem aber überhaupt nichts bringt). Do not Tracking und Privater Modus ändern nichts am grundlegenden Verhalten des Browsers.

Und jetzt du! Deine Meinung?

Erforderliche Felder sind mit einem Asterisk (*) gekennzeichnet. Die E-Mail-Adresse wird nicht veröffentlicht.
  1. Nach Absenden des Kommentar-Formulars erfolgt eine Verarbeitung der von Ihnen eingegebenen personenbezogenen Daten durch den datenschutzrechtlich Verantwortlichen zum Zweck der Bearbeitung Ihrer Anfrage auf Grundlage Ihrer durch das Absenden des Formulars erteilten Einwilligung.
    Weitere Informationen