NEWS
Android Gerät verhält sich eigenartig
-
@Codierknecht App?? Ich nehme den Crome- Browser!
-
@homoran
Misst das Widget eigentlich Screen oder Canvas? -
@laser sagte in Android Gerät verhält sich eigenartig:
@Codierknecht App?? Ich nehme den Crome- Browser!
Dektop modus?
-
@codierknecht sagte in Android Gerät verhält sich eigenartig:
@homoran
Misst das Widget eigentlich Screen oder Canvas?heisst?
-
@homoran
Bildschirmauflösung oder verfügbare Zeichenfläche.
Das wäre beim Browser ein Unterschied, wenn nicht im Vollbild, denn da müssten ja dann noch die Bedienbereiche des Browsers abgezogen werden. -
@codierknecht sagte in Android Gerät verhält sich eigenartig:
die Bedienbereiche des Browsers abgezogen werden.
werden sie!
deswegen ist der Offset für die Menüleiste mal in der Height, mal in der Width. je nach Orientierung.Die Werte sind der nutzbare Raum
-
Desktopmodus? Habe ich ja noch nie gehört! Wenn ich den einschalte, wird das Bild kleiner. Welcher Modus ist denn richtig?
Das Handy liegt bei mir zu 99% in einer Ecke. Bildschirm ist viel zu klein. Nur jetzt zum Betrachten der IOBroker Dinge nehme ich es verstärkt. -
@laser sagte in Android Gerät verhält sich eigenartig:
App?? Ich nehme den Crome- Browser!
@laser sagte in Android Gerät verhält sich eigenartig:
wenn ich auf dem Handy über die VIS-Applikation
Startbeitrag.
-
@djmarc75 nee, nich??.
das war doch noch sein alter Thread zu einem anderen Thema.Das neue hatte er angehängt, da war nichts mehr von App die Rede
-
hier nochmal eine andere Berechnung nur vür den viewport, also genau den sichtbaren Bereich. Der viewport berücksichtigt auch den Browser-Panel
Den folgenden Text in ein normales HTML-Widget eintragen und dann die Visualisierung anzeigen bzw. mit aktualisieren. Werte berechnen sich nicht dynamisch neu, sondern nur beim Aufbau einmalig{xx:javascript.0.test1;"Width:"+Math.max(document.documentElement.clientWidth || 0, window.innerWidth || 0)} {xx:javascript.0.test1;"Height:"+Math.max(document.documentElement.clientHeight || 0, window.innerHeight || 0)}
Ach ja und am Anfang irgendeinen existierenden Datenpunkt auswählen. Welcher und Inhalt ist absolut irrelevant. Es geht nur darum das javascript im binding zu aktivieren
-
ich habe hier am S5e ein ähnliches Verhalten, je nach Modus
Portrait mobil
Portrait Desktop
Landscape mobil
Landscape Desktop
hier wird die Auflösung reduziert, so dass es gezoomt wirkt.
Wird aber auch so im Widget gezeigt -
@OliverIO
hier kommt in Querausrichtung: W: 812 H: 388
und in Hochkant: W: 412 H 812 -
@Homoran
Habe beide Versionen ausprobiert. Ja es kommen unterschiedliche Werte zustande. Diese eingetragen. Aber in Querausrichtung des Handys (und nur dort!) ist das Bild stark vergrößert. -
auf stackoverflow wird das problem bestätigt.
https://stackoverflow.com/questions/36013793/page-is-zoomed-after-change-rotation-to-landscape-on-android-mobile-deviceses gibt folgenden workaround. den folgenden Text in das script-tab kopieren
function fixAndroidRotate() { let _AndroidDevice = navigator.userAgent.includes('Android'); let metaViewport = $('meta[name=viewport]').attr('content'); if (_AndroidDevice){ if (metaViewport.includes('initial-scale=1.001')) { metaViewport = metaViewport.replace('initial-scale=1.001', 'initial-scale=1.0'); } else { metaViewport = metaViewport.replace('initial-scale=1.0', 'initial-scale=1.001'); } $('meta[name=viewport]').attr('content', metaViewport); } } window.addEventListener("orientationchange", (event) => { fixAndroidRotate(); });
-
@oliverio bei mir hilt's nicht
-
-
@laser sagte in Android Gerät verhält sich eigenartig:
Eigentlich wollte ich nur mal das Handy Quer und hoch drehen!
am Tablet klappt's doch auch.
Scheint ja ein Bug in Android zu sein. Wahrscheinlich in neueren? -
@homoran
Das Handy ist alt, sowas hat sicher außer mir Niemand mehr. Das hat nicht nur diese Macke, auch bei anderen Anwendungen (kann ich jetzt gerade nicht aufzählen) gibt es Probleme. Und Ja, am Tablet klappt es. -
@laser
so, hab das skript mal noch flexibilisiert.
viel findet man im internet nicht dazu.
ich denke es ist ein feature, so das durch das drehen genau soviel platz da ist, wie vor dem drehen.
das skript schaltet den zoom einfach wieder auf 1 (zumindest auf knapp 1)function fixAndroidRotate() { const regex = /initial-scale=([\d\.]),/gm; let _AndroidDevice = navigator.userAgent.includes('Android'); let metaViewport = $('meta[name=viewport]').attr('content'); if (_AndroidDevice){ var match=regex.exec(metaViewport); var scale = parseFloat(match[1]); if (scale==1) { metaViewport = metaViewport.replace(regex, 'initial-scale=1.001'); } else { metaViewport = metaViewport.replace(regex, 'initial-scale=1.0'); } $('meta[name=viewport]').attr('content', metaViewport); } } window.addEventListener("orientationchange", (event) => { fixAndroidRotate(); });
-
@oliverio
wo genau muß dieses Script hin, damit es zum richtigen Zeitpunkt ausgeführt wird?