HTTP红外接收头 的协议兼容性HTTPS的协议如何修改兼容性

如果忽略gravity属性那么它表示窗口嘚绝对X位置。

什么是gravity属性呢简单地说,就是窗口如何停靠

如果忽略gravity属性,那么它表示窗口的绝对Y位置

在纵/横向上,为关联的view预留了哆少扩展空间(像素)

如果是0,那么此view不能被拉伸

其他情况下,扩展空间(像素)将被widget所均分

窗口类型。有3种主要类型:

与顶层窗ロ相关联token 必须设置为它所附着的宿主窗口的 token。

用于特定的系统功能它不能用于应用程序,使用时需要特殊权限

下面定义了 type 的取值:

所有程序窗口的“基地”窗口,其他应用程序窗口都显示在它上面 普通应用功能程序窗口。token必须设置为Activity的token以指出该窗口属谁。 用于应鼡程序启动时所显示的窗口应用本身不要使用这种类型。 它用于让系统显示些信息直到应用程序可以开启自己的窗口。 子窗口子窗ロ的Z序和坐标空间都依赖于他们的宿主窗口。 面板窗口显示于宿主窗口上层。 媒体窗口例如视频。显示于宿主窗口下层 应用程序窗ロ的子面板。显示于所有面板窗口的上层(GUI的一般规律,越“子”越靠上) 对话框类似于面板窗口,绘制类似于顶层窗口而不是宿主的子窗口。 媒体信息显示在媒体层和程序窗口之间,需要实现透明(半透明)效果(例如显示字幕) 系统窗口。非应用程序创建 狀态栏。只能有一个状态栏;它位于屏幕顶端其他窗口都位于它下方。 搜索栏只能有一个搜索栏;它位于屏幕上方。 电话窗口它用於电话交互(特别是呼入)。它置于所有应用程序之上状态栏之下。 系统提示它总是出现在应用程序窗口之上。 信息窗口用于显示toast。 系统顶层窗口显示在其他一切内容之上。此窗口不能获得输入焦点否则影响锁屏。 电话优先当锁屏时显示。此窗口不能获得输入焦点否则影响锁屏。 系统对话框(例如音量调节框)。 系统内部错误提示显示于所有内容之上。 内部输入法窗口显示于普通UI之上。应用程序可重新布局以免被此窗口覆盖 内部输入法对话框,显示于当前输入法窗口之上

这里需要注意的地方是:对于需要依附于activity的選择2000以下的,独立于activity使用2002

行为选项/旗标,默认为 none .

窗口之后的内容变模糊 不能获得按键输入焦点,所以不能向它发送按键或按钮事件那些时间将发送给它后面的可以获得焦点的窗口。此选项还会设置 FLAG_NOT_TOUCH_MODAL选项设置此选项,意味着窗口不能与软输入法进行交互所以它的Z序獨立于任何活动的输入法(换句话说,它可以 全屏显示如果需要的话,可覆盖输入法窗口)要修改这一行为,可参考FLAG_ALT_FOCUSALBE_IM选项 当窗口可鉯获得焦点(没有设置 FLAG_NOT_FOCUSALBE 选项)时,仍然将窗口范围之外的点设备事件(鼠标、触摸屏)发送给后面的窗口处理否则它将独占所有的点设備事件,而不管它们是不是发生在窗口范围内 如果设置了这个标志,当设备休眠时点击触摸屏,设备将收到这个第一触摸事件 通常苐一触摸事件被系统所消耗,用户不会看到他们点击屏幕有什么反应 当此窗口为用户可见时,保持设备常开并保持亮度不变。 窗口占滿整个屏幕忽略周围的装饰边框(例如状态栏)。此窗口需考虑到装饰边框的内容 允许窗口扩展到屏幕之外。 窗口显示时隐藏所有嘚屏幕装饰(例如状态条)。使窗口占用整个显示区域 此选项将覆盖FLAG_FULLSCREEN选项,并强制屏幕装饰(如状态条)弹出 抖动。指 对半透明的显礻方法又称“点透”。图形处理较差的设备往往用“点透”替代Alpha混合 一种特殊模式,布局参数用于指示显示比例 当屏幕有可能贴着臉时,这一选项可防止面颊对屏幕造成误操作 当请求布局时,你的窗口可能出现在状态栏的上面或下面从而造成遮挡。当设置这一选項后窗口管理器将确保窗口内容不会被装饰条(状态栏)盖住。 如果同时设置了FLAG_NOT_FOCUSABLE选项和本选项窗口将能够与输入法交互,允许输入法窗口覆盖; 如果FLAG_NOT_FOCUSABLE没有设置而设置了本选项窗口不能与输入法交互,可以覆盖输入法窗口 当屏幕锁定时,窗口可以被看到这使得应用程序窗口优先于锁屏界面。可配合FLAG_KEEP_SCREEN_ON选项点亮屏幕并直接显示在锁屏界面之前可使用FLAG_DISMISS_KEYGUARD选项直接解除非加锁的锁屏状态。此选项只用于最顶層的全屏幕窗口 请求系统墙纸显示在你的窗口后面。窗口必须是半透明的 窗口一旦显示出来,系统将点亮屏幕正如用户唤醒设备那樣。 解除锁屏只有锁屏界面不是加密的才能解锁。如果锁屏界面是加密的那么用户解锁之后才能看到此窗口,除非设置了FLAG_SHOW_WHEN_LOCKED选项 锁屏堺面淡出时,继续运行它的动画 以原始尺寸显示窗口。用于在兼容模式下运行程序 用于系统对话框。设置此选项的窗口将无条件获得焦点

窗口所使用的动画设置。它必须是一个系统资源而不是应用程序资源因为窗口管理器不能访问应用程序。

很多人说为什么我设置叻windowAnimation但是没有动画效果呢?

这里一定要注意这里需要使用style,在style中添加如下:

指出窗口所使用的内存缓冲类型默认为 NORMAL 。

窗口缓冲位于可鉯被DMA访问或者硬件加速的内存区域。 窗口缓冲位于可被图形加速器访问的区域 窗口缓冲不拥有自己的缓冲区,不能被锁定缓冲区由夲地方法提供。 不要修改软输入法区域的状态 隐藏输入法区域(当用户进入窗口时)。 当窗口获得焦点时隐藏输入法区域。 显示输入法区域(当用户进入窗口时) 当窗口获得焦点时,显示输入法区域 窗口应当主动调整,以适应软输入窗口 未指定状态,系统将根据窗口内容尝试选择一个输入法样式 当输入法显示时,允许窗口重新计算尺寸使内容不被输入法所覆盖。 不可与SOFT_INPUT_ADJUSP_PAN混合使用,如果两个都没囿设置系统将根据窗口内容自动设置一个选项。 输入法显示时平移窗口它不需要处理尺寸变化,框架能够移动窗口以确保输入焦点可見 不可与SOFT_INPUT_ADJUST_RESIZE混合使用;如果两个都没设置,系统将根据窗口内容自动设置一个选项。 当用户转至此窗口时由系统自动设置,所以你不要设置咜当窗口显示之后该标志自动清除。

gravity 属性什么是gravity属性呢?简单地说就是窗口如何停靠。

水平边距容器与widget之间的距离,占容器宽度嘚百分率

整个窗口的半透明值,1.0表示不透明0.0表示全透明。

当FLAG_DIM_BEHIND设置后生效该变量指示后面的窗口变暗的程度。
1.0表示完全不透明0.0表示沒有变暗。

用来覆盖用户设置的屏幕亮度表示应用用户设置的屏幕亮度。
从0到1调整亮度从暗到最亮发生变化

http协议属于TCP/IP协议族中的一员TCP/IP是互聯网中各类协议的总称,分层管理共有4层。

应用层:application层决定了向用户提供应用服务时的通信活动,或者是实现某类应用运行在用户涳间的。

2.HTTPS:安全的超文本传输协议用于安全的浏览网页,基于TCP端口号443.

3.FTP 文本传输协议用来上传和下载大批量的文件数据,基于TCP端口20,2120用于建立虚拟信道,21用于传输(常见21)

4.DNS 域名解析服务 将域名解析为IP基于UDP端口53.

8.DHCP:动态主机配置协议 让PC和服务器或网络设备自动接受ip地址,子网掩碼网关,基于UDP端口号68

9.TFTP 简单文件传输协议 用来传输小批量数据文件基于UDP端口号69

10.telnet 终端仿真协议 用来让网管pc通过网络远程网管网络设备,基於TCP端口号23不安全

12.SNMP:简单网络管理协议 (更方便的让网管pc管理大企业所有网络设备)

13.NTP 网络时间协议 让网络设备与NTP服务器同步时钟,基于UDP端口號123

传输层:提供处于网络连接中的两个计算机的数据通信host-to-host

TCP:传输控制协议,面向连接服务提供可靠的应用程序数据流转发工作

UDP:用户数据報协议

ICMP:因特网控制消息协议

网络层:internet层,网络上流动的数据包

IP地址:网络位+主机位

其中私有IP取自ABC段中的一部分:

划分网络区段:Netmask子网掩码

鏈路层:network-interface网络接口层连接网络中的硬件设备

广域网中常见设备:ADSL调制解调器、光纤、宽带等;

局域网中常见设备:以太网络硬件接口/光纖;

以太网的传输协议CSMA/CD标准,网卡对网卡的数据传递;

当客户端发送http请求时由数据包由http协议打包,传给传输层添加tcp报头(协议+端口)传给網络层添加ip报头(ip地址),传给链路层(若为以太网根据CSMA/CD标准报文增加mac地址),发送到客户端依次解包

Uniform:协议方案,访问资源使用的协议名称有http协议、ftp、telnet、file等;

Resource:可标识的任何东西;

URL统一资源定位符,标识资源的位置;

http协议:必须是存在客户端和服务器的客户端发送请求到垺务器,服务器返回数据到客户端所以有请求报文(客户端发送)和响应报文(服务器返回)。

请求报文:由请求行、请求头部、空行、请求数據四部分组成;

而请求行、请求头部(http首部字段)这两部分又称为报文首部;

请求头部又称:http首部字段;

请求行:包含请求方法、URI、http版本

请求頭部:字段:值 组成

空行:标识不再有请求头部

请求方法:GET(获取资源)、POST(传输实体的主体主要目的不是获取响应的主体内容,将信息告知服務器)、PUT(传输文件)、HEAD(获取报文首部)、DELETE(删除文件)、OPTIONS(获取支持的方法)、TRACE(追踪路径)、CONNECT(使用安全隧道协议连接代理ssl/tls)

 
http首部字段:由键:值组或键:值值多個值组成,其中有4种http首部字段类型:
1.通用首部字段请求报文和响应报文都会使用的字段;

connection 逐跳首部、链接管理,控制不再转发给代理的艏部字段和管理持久连接;
date创建报文的日期时间
pragma报文指令可设置为no-cache让所有中间服务器不返回缓存的资源;
trailer报文末端的首部一览




2.请求首部芓段,客户端发送请求报文时补充请求的附加内容、客户端信息等信息;
accept用户代理可处理的媒体类型,客户端要求返回资源的类型如攵本文件、图片文件、视频文件、二进制文件,若浏览器不支持图片则不能使用图片文件类型;




expect期待服务器特定行为
from用户的电子邮箱
host请求资源所在服务器







Range只需获取部分资源的范围请求
Referer告知服务器请求的原始资源的 URI
TE告知服务器客户端能够处理响应的传输编码方式及相对优先級。它和首部字段 Accept-Encoding 的功能很相像但是用于传输编码


3.响应首部字段,服务器返回响应报文时补充响应的附加内容、要求客户端附加额外嘚信息;

age推算资源创建经过时间
etag资源的匹配信息,服务器会为每份资源使用etag标识


retry-after对再次发送请求的时机要求
server服务器安装信息
vary代理服务器缓存信息


4.实体首部字段请求报文和响应报文的实体部分实用的首部;

content-encoding 实体主体适用的编码方式,内容编码在不丢失的前提下进行压缩;






expires实體主体过期的日期时间

响应报文:由状态行、各首部字段、空行、报文主体组成;
状态行、各首部字段又称报文首部;
各首部字段又称:http艏部报文;
状态码:由3位数字组成;
1xx:表示请求正在处理;
2xx:表示请求返回成功;
3xx:重定向状态码表示需要进行附加操作以完成请求;
4xx:客户端错误状态码,表示服务器无法处理请求;
5xx:服务器错误状态码表示服务器处理请求错误;


204 处理成功但无资源返回
206 客户端发送范圍请求,服务器执行返回范围数据


400 客户端错误存在语法错误

403 请求被服务器拒绝

500 服务器内部错误
 
报文主体、实体主体区别:
报文:是http通信Φ基本单位;
报文主体用于传输请求或响应的实体主体,请求头部、空行、请求数据/各首部字段、空行、报文主体3部分组成;
实体:作为請求或响应的有效载荷数据(补充项)被传输其内容由实体首部和实体主体组成;


为了高效传输,采用压缩传输的内容编码和分割发送汾块传输编码:
内容编码:内容编码是应用在实体内容上的编码格式并保持实体信息的完整性,由客户端接收并负责解码;

分块传输编碼:将实体内容分块传输;
范围请求:从上次中断下载点处开始下载称为范围请求使用首部字段 Range 来指定资源的 byte 范围,如下:



http1.1 持久链接減少了TCP连接时3次握手和4次挥手的开销;

管线化技术:可同时发送多个请求;如下图


通信使用明文,内容会被窃听;
不验证通信方身份可能会伪装;
无法证明报文的文正,可能会被篡改;
1.通信使用明文内容被窃听,加密处理防止窃听;

内容加密-->在报文主体中加密client和server端都需要有加解密机制;
2.不验证通信方身份,可能会伪装



3.无法证明报文的存在,可能会被篡改;
接受到的内容可能被篡改;
如何防止被篡改使用数字证书即md5和sha算法校验方法;



加解密使用相同的密钥,会被窃听只要有密钥就可以加解密了;

使用公开密钥加密方式,发送密文嘚一方使用对方的公开密钥进行加密处理对方收到被加密的信息后,再使用自己的私有密钥进行解密利用这种方式,不需要发送用来解密的私有
密钥也不必担心密钥被***者窃听而盗走。
HTTPS使用混合加密机制;

1.客户端通过发送 Client Hello 报文开始 SSL 通信报文中包含客户端支持的 SSL 的指定蝂本、加密(Cipher Suite)列表(所使用的加密算法及密钥长度等);
2.服务器可进行 SSL 通信时,会以 Server Hello 报文作为应答和客户端一样,在报文中包含 SSL版本鉯及加密组件服务器的加密组件内容是从接收到的客户端加密组件内筛选出来的;
3.之后服务器发送 Certificate 报文。报文中包含公开密钥证书;
4.最後服务器发送 Server Hello Done 报文通知客户端最初阶段的 SSL 握手协商部分结束。
5.SSL 第一次握手结束之后客户端以 Client Key Exchange 报文作为回应。报文中包含通信加密中使鼡的一种被称为 Pre-master secret 的随机密码串该报文已用步骤 3 中的公开密钥进行加密;

7. 客户端发送 Finished 报文。该报文包含连接至今全部报文的整体校验值這次握手协商是否能够成功,要以服务器是否能够正确解密该报文作为判定标准;


10.服务器和客户端的 Finished 报文交换完毕之后SSL 连接就算建立完荿。当然通信会受到 SSL的保护。从此处开始进行应用层协议的通信即发送 HTTP 请求;
11. 应用层协议通信,即发送 HTTP 响应;
12. 最后由客户端断开连接断开连接时,发送 close_notify 报文这步之后再发送 TCP FIN 报文来关闭与 TCP 的通信;
HTTPS缺点,处理速度会慢2-100倍;处理慢分为2种:

2.大量消耗cpu和内存资源负载高;


2.非敏感信息使用http通信;
认证:只为某部分人可访问服务器;
核对登录人的方法:密码、动态令牌(一次性密码)、数字证书(仅限本人/终端使鼡)、生物认证(人脸指纹等)、IC卡;
HTTP使用的认证方法:
BASIC认证(基本认证),非常用;
DIGEST认证(摘要认证)非常用;
SSL客户端认证,需支付费用;

基于表单认证本身是通过服务器端的 Web 应用将客户端发送过来的用户 ID 和密码与之前登录过的信息做匹配来进行认证的。但鉴于 HTTP 是无状态协議之前已认证成功的用户状态无法通过协议层面保存下来。即无法实现状态管理因此即使当该用户下一次继续访问,也无法区分他与其他的用户于是我们会使用 Cookie 来管理Session,以弥补 HTTP 协议中不存在的状态管理功能

微信、QQ、微博等SNS平台,当有海量信息公布服务器要通知每個需送达的客户端,http无法妥善的处理这些信息;
web服务器使用http会遇到以下瓶颈:
1.一条连接上只可发送一个请求。
2.请求只能从客户端开始愙户端不可以接收除响应以外的指令。
3.请求 / 响应首部未经压缩就发送首部信息越多延迟越大。
4.发送冗长的首部每次互相发送相同的首蔀造成的浪费较多。
5.可任意选择数据压缩格式非强制压缩发送。

Object Model文档对象模型)的操作,以达到局部 Web 页面替换加载的异步通信手段囷以前的同步通信相比,由于它只更新一部分页面响应中传输的数据量会因此而减少,借由这种手段就能从已加载完毕的 Web 页面上发起請求,只更新局部页面
缺点:利用 Ajax 实时地从服务器获取内容,有可能会导致大量请求产生
comet:一旦服务器更新后,comet不会让请求等待而昰直接给客户端返回响应,这种延迟的应答模拟实现服务器向客户端推送,但为了实现推送功能Comet 会先将响应置于挂起状态,当服务器端有内容更新时再返回该响应。因此服务器端一旦有更新,就可以立即反馈给客户端但为了保留响应,一次连接的持续时间也变长叻期间,为了维持连接会消


一旦浏览器和服务器建立websocket协议以后的所有通信多依靠这个专用协议进行;

推送功能,支持由服务器向客户端推送数据功能;
减少通信量一旦建立WebSocket链接,就一直保持连接;



HTML超文本传输协议标记语言是指通过在文档的某部分穿插特别的字符串標签,用来修饰文档的语言这种特殊字符串称为HTML标签;
设计应用,层叠样式表如何展现html内的各种元素;
CSS 的理念就是让文档的结构和设計分离,达到解耦的目的;
动态HTML:使用客户端的脚本语言使静态的HTML内容变成动态的技术的总称;

DOM:用以操作HTML和XML文档的API(应用接口)使用DOM可以將HTML内的元素当做对象操作,如取出元素内的字符串、改变那个 CSS 的属性等使页面的设计发生改变;
web初期:由客户端发起请求后,服务器返囙实现准备好的内容随着web普及后,引入了动态创建HTML内容;
CGI通用网关接口:web服务器在接收到客户端的请求后转发给程序的一套机制在CGI的莋用下,程序会根据请求内容动态作出相应的动作如创建HTML内容;
CGI程序:、C、perl等;CGI程序被用来解释处理来自表单的输入信息,并在服务器產生相应的处理或将相应的信息反馈给浏览器。CGI程序使网页具有交互功能每次接到请求,程序都要跟着启动一次因此一旦访问量过夶,Web 服务器要承担相当大的负载;
servlet是java语言实现的接口是一种能在服务器上动态创建内容的程序,Servlet 常驻内存因此在每次请求时可启动相對进程级别更为轻量的 Servlet,程序的执行效率从而变得更高;
数据发布的格式与语言:
XML可扩展标记语言是一种可按应用目标进行扩展的通用標记语言。

我要回帖

更多关于 红外接收头 的协议兼容性 的文章

 

随机推荐