Android中的网络应用之网页设置,检测、配置用户设备属性。

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Android中的网络应用之网页设置,检测、配置用户设备属性。相关的知识,希望对你有一定的参考价值。

参考技术A 由于android可用于具有各种屏幕尺寸和像素密度的设备,因此您应该在网页设计中考虑到这些因素,以便您的网页始终以适当的大小显示。

当您定位到Android设备的网页时,您应该考虑以下两个主要因素:
视口
视口是为您的网页提供可绘制区域的矩形区域。 您可以指定多个视口属性,例如其大小和初始刻度。 最重要的是视图端口宽度,它定义了从网页的角度可用的水平像素总数(可用的CSS像素数)。
屏幕密度
WebView类和大多数Web浏览器将您的CSS像素值转换为与密度无关的像素值,因此您的网页以与中密度屏幕(约160dpi)相同的可感知大小显示。 然而,如果图形是您的网页设计的重要元素,则应该密切关注不同密度下的缩放,因为320dpi屏幕上的300像素宽的图像将被放大(使用每个CSS像素更多的物理像素) ,它可以产生人造物(模糊和像素化)

视口是您的网页绘制的区域。 虽然视口的总可见区域与缩放后的屏幕大小匹配,但视口具有自己的像素尺寸,可用于网页。 例如,尽管设备屏幕的物理宽度可能为480像素,但视口的宽度可以为800像素。 当视口比例为1.0时,这允许设计为800像素宽的网页在屏幕上完全可见。 默认情况下,Android(包括Chrome)上的大多数网络浏览器都将视口设置为较大的尺寸(称为“宽视口模式”,大约为980px宽)。 许多浏览器也尽可能缩小,默认情况下显示完整的视口宽度(称为“概览模式”)。
注意:当您的页面在WebView中呈现时,默认情况下不会使用宽视口模式(页面以完全缩放显示)。 您可以使用setUseWideViewPort()启用宽视口模式。
您可以使用文档<head>中的<meta name =“viewport”...>标签来定义网页视口的属性,例如宽度和初始缩放级别。
以下语法显示所有支持的视口属性和每个受支持的值的类型:

例如,以下<meta>标记指定视口宽度应与设备屏幕宽度完全相符,并且应禁用缩放功能:

当优化您的移动设备的站点时,通常应将宽度设置为“设备宽度”,以使尺寸完全符合所有设备,然后使用CSS媒体查询来灵活地调整布局以适应不同的屏幕尺寸。

注意:只有当您确定您的网页布局是灵活的并且内容适合小屏幕的宽度时,才应禁用用户缩放。

Android浏览器和WebView支持CSS媒体功能,允许您为特定的屏幕密度创建样式 - -webkit-device-pixel-ratio CSS媒体功能。 您应用于此功能的值应为“0.75”,“1”或“1.5”,以表示样式分别用于具有低密度,中密度或高密度屏幕的设备。
例如,您可以为每个密度创建单独的样式表:

或者,在一个样式表中指定不同的样式:

有关处理不同屏幕密度(尤其是图像)的更多信息,请参阅高DPI图像以获得可变像素密度
使用javascript定位设备密度
Android浏览器和WebView支持DOM属性,可以让您查询当前设备的密度,即window.devicePixelRatio DOM属性。此属性的值指定用于当前设备的缩放因子。例如,如果window.devicePixelRatio的值为“1.0”,则设备被认为是中密度设备,默认情况下不应用缩放;如果值为“1.5”,则设备被认为是高密度设备,默认情况下页面缩放为1.5x;如果值为“0.75”,则设备被认为是低密度设备,默认情况下页面缩放为0.75x。当然,Android浏览器和WebView应用的扩展是基于网页的目标密度,如关于定义视口目标密度的部分所述,默认目标是中等密度,但是您可以更改目标来影响如何您的网页会缩放不同的屏幕密度。

例如,以下是使用JavaScript查询设备密度的方法:

Supporting Different Screens in Web Apps
以上内容为官方翻译,翻译不准确地方望指出:

linux复习基础之网络配置

Linux 的网络配置基本上是通过修改几个配置文件来实现的,虽然也可以用ifconfig来设置IP,用route来配置默认网关,用hostname来配置主机名,但是重启后会丢失。

  下面是相关的配置文件:

  /ect/hosts        配置主机名和IP地址的对应,对本机提供解析

  /etc/resolv.conf      配置域名(在hosts内解析不到时此域名生效)

  /etc/sysconfig/network      配置主机名和网关

  /etc/sysconfig/network-scripts/ifcfg-eth0 配置IP、Mask等网络参数

  一、网卡配置

  cat /etc/sysconfig/network-scripts/ifcfg-eth0

  DEVICE=eth0

  ONBOOT=yes

  BOOTPROTO=none

  IPADDR=192.168.1.250

  NETMASK=255.255.255.0

  GATEWAY=192.168.76.1

  ifconfig eth0 210.34.6.89 netmask 255.255.255.128 broadcast 210.34.6.127

  ifconfig eth0:0 192.168.0.253 netmask 255.255.255.0

  ifconfig eth0:1 192.168.0.252 netmask 255.255.255.0

  ifconfig eth0 down

  ifconfig eth0 up

  二、多网卡配置:

  cat /etc/sysconfig/network-scripts/ifcfg-eth0

  DEVICE=eth0

  BOOTPROTO=none

  IPADDR=192.168.1.2

  NETMASK=255.255.255.0

  ONBOOT=yes

  cat /etc/sysconfig/network-scripts/ifcfg-eth0

  DEVICE=eth1

  BOOTPROTO=static

  IPADDR=222.157.4.82

  NETMASK=255.255.255.128

  ONBOOT=yes

  vi   /etc/rc.d/rc.local

  route add -net 192.168.0.0/24 gw 192.168.0.254 dev eth0

  route add -net 222.157.0.0/16 gw 222.157.66.1 dev eth1

  三、网关配置:

  注意:以下用命令设置的方式设置完后需要将命令加入到 /etc/rc.d/rc.local 中,否则重启后设置被自动清除!

  1、在 /etc/sysconfig/network-scripts/ifcfg-eth0 中配置;

  GATEWAY=192.168.76.1

  2、在 /etc/sysconfig/network 中配置:

  cat /etc/sysconfig/network

  NETWORKING=yes

  HOSTNAME=zhaohang.com

  GATEWAY=192.168.76.1

  3、用命令设置:

  如果只需要添加默认路由可以这样设置:

  route add default gw 192.168.1.1

  route del default gw 192.168.1.254 (可以删除默认路由,用此方法改变后几分钟就可以生效.)

  如果两个网卡均需要网关可以这样设置:

  route add -net 192.168.0.0/24 gw 192.168.0.254 dev eth0

  route add -net 222.157.0.0/16 gw 222.157.66.1 dev eth1

  备注:设置好路由或默认网关以后可以用命令查看:

  route -n

  netstat -rn

  route print (For windows)


本文出自 “大李子” 博客,谢绝转载!

以上是关于Android中的网络应用之网页设置,检测、配置用户设备属性。的主要内容,如果未能解决你的问题,请参考以下文章

win10的IE和Edge浏览器都打不开网页,火狐却可以,其他网络功能正常

使用移动网页检测设备上是不是已安装 Android 应用 - PHP 和 JS

android如何检测哪些应用有service

android 中 webview 怎么用 localStorage

错误记录Android 应用安全检测漏洞修复 ( StrandHogg 漏洞 | 设置 Activity 组件 android:taskAffinity=““ )

android webview 检测联网