Wie erzwinge ich das Laden der Desktop-Version der Website (das Ändern des Benutzeragenten funktioniert nicht)?

Einige Webseiten erzwingen eine mobile Version, selbst wenn ich den User-Agent ändere . Ich habe den User-Agent im eingebauten Browser und "Dolphin Browser HD" geändert, ich überprüfe es auf der Seite www.user-agent-string.info

Hauptproblem ist engadget.com, immer in der mobilen Version. Ich habe versucht, Cookies zu löschen, Browser neu zu starten usw.

Das sind meine Ergebnisse:

  1. im eingebauten Browser, User-Agent - "Desktop"

    • ( allegro.pl ) funktioniert nicht , leitet zur mobilen Version weiter
  2. in "Dolphin Browser HD", User-Agent - "Desktop"

    • (NSFW: redtube.com) funktioniert nicht , leitet zur mobilen Version weiter
    • (allegro.pl) funktioniert gut
  3. in "Dolphin Browser HD", User-Agent - "iPad"

    • ( engadget.com ) funktioniert nicht , leitet zur mobilen Version weiter
    • (allegro.pl) funktioniert gut
    • (NSFW: redtube.com) funktioniert einwandfrei
  4. in "Dolphin Browser HD", User-Agent - "custom": Mozilla/5.0 (Windows NT 6.0; rv:7.0.1) Gecko/20100101 Firefox/7.0.1

    • (engadget.com]) funktioniert nicht , leitet zur mobilen Version weiter
    • (NSFW: redtube.com) funktioniert nicht , leitet zur mobilen Version weiter
    • (allegro.pl) funktioniert gut

Vielleicht verwenden diese Seiten die User-Agent-Erkennung "Adobe Flash"?

(Ich verwende Asus Transformer TF101, Android 3.2.1, Adobe Flash Player 11)

Ich hatte einige Probleme damit, dass der Standardbrowser auch auf mobile Seiten umgeleitet wurde, z. B. teambuy.ca. Ich würde auch zustimmen, dass sie etwas anderes als den Benutzeragenten verwenden, um die Umleitung zu bestimmen.
Bitte finden Sie eine andere Beispielseite als redTube, die Sie verwenden können!!
Ich würde Engadget Feuer schicken - wenn sie dir nicht erlauben, der mobilen Version zu entkommen, dann ist es ihre Schuld.
Hast du alle aktuellen OS-Updates gemacht? ASUS hat in den letzten Wochen ein paar Updates veröffentlicht, von denen eines genau dieses Problem beheben soll.

Antworten (7)

Das hat vielleicht nichts mit dem UserAgent zu tun – sondern nutzt andere Mittel des Responsive Design . Nehmen Sie zum Beispiel meine Android-Seite : Ich bewerte die UA überhaupt nicht. Probieren Sie die Seite mit Ihrem mobilen Gerät aus, spielen Sie mit UA und Cookies, so viel Sie wollen – es sei denn, Sie ändern Ihre Bildschirmauflösung, die Ergebnisse sind immer gleich.

@media (max-width: 600px) {
  // adjustments for small screens go here
}

Das ist ein Ausschnitt aus den Stylesheets meiner Website. Sie sehen, sobald die Bildschirmbreite (das ist nicht die physische Breite des Bildschirms, sondern die Breite des Browserfensters) unter 600 Pixel fällt, wird spezielles CSS angewendet: um den Inhalt lesbar und fokussiert zu halten, gehen beispielsweise die Tabs aus von links nach oben (oder unten, je nachdem, wie der Browser das CSS interpretiert) und einige andere Dinge.

Was bedeutet: Für solche Seiten wäre die einzige Möglichkeit, „die Desktop-Variante zu erzwingen“, mit der Bildschirmdichte zu spielen – was Root erfordert und einige unerwünschte Nebenwirkungen haben könnte (stellen Sie die Dichte zu hoch ein, und Sie können nichts mehr lesen als die Schrift wird zu klein, um nur ein harmloses Beispiel zu nennen).

Hier gibt es eine Alternative, wenn auch spezifisch und restriktiv, aber sie funktioniert gut auf Firefox für Android ohne Root. Siehe Webbrowser – wie man eine echte native Auflösung übergibt, um zu verhindern, dass Websites ein responsives Design für Mobilgeräte bereitstellen

Einige IP-Blöcke oder andere Header-Informationen können verwendet werden, um Anfragen als von Telefonanbietern kommend zu identifizieren. Bei dem Versuch, die Benutzererfahrung zu überkonstruieren, könnten einige Webdesigner zu extremen Anstrengungen (z. B. indem sie diese Informationen anstelle des Benutzeragenten verwenden) versuchen, dem Benutzer das aufzuzwingen, was sie für die optimale Erfahrung halten.

Sie können dies umgehen, indem Sie anstelle Ihres mobilen Datenplans WLAN verwenden, aber ich vermute, das ist nicht die Antwort, nach der Sie suchen. Abgesehen davon gibt es eine mir bekannte Zip, die Sie dagegen tun können, außer sich bei den Website-Betreibern zu beschweren.

Für das, was es wert ist, haben einige Websites einen Link in der Kopf- oder Fußzeile, der es mobilen Benutzern ermöglicht, die Standardseite (wie Facebook) anzuzeigen, aber das ist eher die Ausnahme als die Regel.

Die Verwendung von Wi-Fi hat mir nie geholfen, daher würde ich davon ausgehen, dass die meisten Websites eine andere Erkennungsmethode verwenden.
Hängt davon ab, ob Sie Ihren Benutzeragenten blockiert haben, nehme ich an. Meine ist gesperrt.

Notiz:

  • Diese Antwort soll nur die Kopfgeldnotiz (von Abhishek Anand angebotenes Kopfgeld ) ansprechen und ist daher möglicherweise nicht sehr relevant für die ursprüngliche historische Frage.

    Prämiennotiz

    Es muss einen besseren Weg geben, dies zu tun. Wenn ein Webserver den User-Agent-Wert missachtet und sich die Bildschirmgröße ansieht, muss es auch eine Möglichkeit geben, die Bildschirmgröße zu fälschen.

  • Ab sofort ist diese Antwort nur für Benutzer des Firefox-Browsers für Android relevant .

Izzys Antwort erklärt uns, dass das Problem höchstwahrscheinlich das responsive Design der Website ist, ein Design, das den User-Agent und letztendlich auch die Wahl des Benutzers außer Acht lassen kann.

Das responsive Design passt die Benutzeroberfläche der Website basierend auf der Größe des Browserfensters an. Das heißt, auf dem Desktop, wenn Sie www.cs.princeton.edu/research/areas oder android.izzysoft.de/articles.php (beide Websites verwenden Responsive Design) in einem neuen Fenster öffnen und die Größe des Fensters mit der Maus anpassen oder Verknüpfungen werden Sie Zeuge des Übergangs des Designs von Desktop zu Tablet zu Handy.

Dieses Verhalten impliziert, dass die Website die Abmessungen des Browserfensters als die wahre Größe des Bildschirms ansieht.

In Firefox besteht die Abhilfe für dieses Verhalten darin, den Wert des Schlüssels zu ändern layout.css.devPixelsPerPx. Sie können dies tun, indem Sie about:configin die URL-Leiste eingeben und anschließend suchen layout.css.devPixelsPerPx. Der Standardwert wäre auf -1,0 gesetzt. Doppeltippen Sie auf den Wert, um ihn zu bearbeiten.

Laut den Firefox -Tweaks von Arch Wiki und dieser Antwort von jscher2000 im Mozilla-Support würde das Ändern des Werts auf 1,0 einem Bildschirm mit 96 DPI entsprechen (Ihr POV kann abweichen), eine DPI, die häufig in Monitoren zu finden ist. Passen Sie den Wert auf 1,0 oder 2,0 oder sogar in einem Bereich von -1,0 bis 1,0 an. Seien Sie sehr vorsichtig , wenn Sie auf FullHD- oder UltraHD-Smartphones einen Wert unter 1,0 verwenden, da die Schriftgröße unleserlich werden kann.

Ich fand 1,0 für mein 5,5 - Zoll -FullHD-Gerät und 0,4 für mein 5,0 - Zoll -Nicht-HD-Gerät die besten Werte für den Desktop-Modus.

Beispiel-Screenshots:

  • Erstes Bild: Standardwert auf -1,0
  • Zweites Bild: Wert auf 1,0 für mein FullHD-Gerät
  • Drittes Bild: Wert auf 0,4 für mein Nicht-HD-Gerät

(Bild anklicken zum Vergrößern)

IMG: 1 IMG: 2 IMG: 3

Nachteile

  • Die Auswirkung der Optimierung ist universell, daher würde jede Site im Desktop-Layout oder dem von Ihnen gewählten Layout angezeigt, bis Sie den Wert auf -1,0 zurücksetzen.
  • Einige Websites können sich auch auf den User-Agent verlassen, daher können Änderungen an beiden erforderlich sein.

Erleichterung für gerootete Geräte

Wenn Sie ständig auf bestimmte Websites mit responsivem Design zugreifen müssen, aber nur im Desktop-Modus, about:configkann das Hin und Her ziemlich lästig sein.

In diesem Fall können Sie diese flexiblen Befehle verwenden:

(Benötigt BusyBox installiert)

  • Ändern Sie das Layout auf Desktop

    am force-stop org.mozilla.firefox; schlafen 1; sed -i '$auser_pref("layout.css.devPixelsPerPx", "1.0");' /data/data/org.mozilla.firefox/files/mozilla/*.default/prefs.js; monkey -p org.mozilla.firefox 1

    Hier:

    • am: Aktivitätsmanager; erzwingt das Beenden von Firefox, da die Änderungen sonst nicht wirksam werden
    • sleep: vor weiterer Ausführung n Sekunden warten ; benötigt für einige alte und langsame Geräte, wie meins
    • sed: ein Stream-Editor; fügt die Konfiguration hinzu, die das Layout auf Desktop festlegen würde. 1.0sollte durch den Wert ersetzt werden, den Sie im letzten Abschnitt gefunden haben.

      Beachten Sie , dass die Erwähnung /data/data/org.mozilla.firefox/files/mozilla/*.default/prefs.jsdazu führt, dass die Änderungen in jedem Firefox-Profil stattfinden. Um den Befehl profilspezifisch zu machen, ersetzen Sie ihn *.defaultdurch den Namen des Profilverzeichnisses.

    • monkey: Während es für Stresstests einer App gedacht ist, hilft es uns, die Launcher-Aktivität von Firefox zu starten
  • Zurück zum standardmäßigen mobilen Layout

    am force-stop org.mozilla.firefox; schlafen 1; sed -i '/.*layout.css.devPixelsPerPx.*/d' /data/data/org.mozilla.firefox/files/mozilla/*.default/prefs.js; monkey -p org.mozilla.firefox 1

    Wir löschen einfach die Zeile mit der Layoutkonfiguration.


Nutzung in der realen Welt

Wie Sie die beiden Befehle aus dem letzten Abschnitt praktisch verwenden, liegt ganz bei Ihnen.

Ich kann empfehlen:

  • LMT-Launcher . Es hat die Möglichkeit, einem Pie ein Skript zuzuweisen (siehe Beispiel ). Unter dem Skript können Sie den gesamten Befehl kopieren und einfügen. Es kann einem Pie auch eine App-Verknüpfung zuweisen, sodass Sie es mit Tasker oder MacroDroid oder Secure Settings verwenden können . Letztere Apps können Ihre Befehle ausführen.

  • GMD Gestensteuerung . Verwenden Sie Gesten, um das Gerät zu steuern, oder führen Sie in unserem Fall unsere Befehle aus. Grundlegende Details und Verwendung finden Sie in meiner Antwort hier und hier . Sie benötigen eine Drittanbieter-App wie Tasker oder Secure Settings für den Befehlsausführungsteil.

  • Alles in einem Gesten . Diese App kann das Gerät auch mit Gesten steuern. Wie bei der letzten App ist für die Befehlsausführung die Unterstützung von Drittanbietern erforderlich. Bei Bedarf finden Sie in meiner Antwort sehr grundlegende Informationen.
  • GravityBox . Vielleicht eine Zauberkiste. Sie können es verwenden, um einen Kuchen anzuzeigen, der Ihren Befehl beim Tippen ausführt, oder eine benutzerdefinierte Kachel in der Schnelleinstellungsleiste hinzufügen (siehe Beispiel ). Informationen zur Verwendung finden Sie im ersten Abschnitt meiner Antwort hier .
  • Overlays – Überall schweben . Erinnert mich an dieses Beispiel ( Bildquelle ), wo Sie Dinge in eine globale, versteckte, aber auf Anfrage verfügbare Seitenleiste hinzufügen können. Auch hier benötigen Sie eine Drittanbieter-App, um Ihre Befehle auszuführen. Informationen zur Verwendung finden Sie auf der offiziellen Website oder in meiner Antwort hier .

Notiz:

Ich verwende Dolphin For Pad und es lädt die Desktop-Version von Engadget mit den Standardeinstellungen. Ich werde RedTube nicht ausprobieren, da es NSFW ist. Versuche es! :)

Einige Websites tauschen möglicherweise CSS basierend auf der Bildschirmgröße aus. Es gibt nicht allzu viele PCs da draußen, die mit Telefonauflösungen laufen. Das Deaktivieren von Javascript könnte dies zusammen mit einer Änderung des Benutzeragenten umgehen.

Wenn es wirklich CSS-basiert ist, hat JavaScript nichts damit zu tun.

Ich hatte das gleiche Problem mit dem Ansehen ganzer Folgen der täglichen Show auf meinem Android. Es stellte sich heraus, dass ich die Website zuerst als Handy besucht hatte und zuerst meinen Cache löschen und sie in den Desktop-Modus versetzen musste.

Sehen Sie sich die Antwort unter Webbrowser an – wie man eine echte native Auflösung übergibt, um zu verhindern, dass Websites ein responsives Design für Mobilgeräte bereitstellen

Es erfordert die Verwendung eines bestimmten Browsers, aber zumindest ist es ein großer Name wie Firefox.