wap入门经典教程(一) 收藏
前言
国际互联网的新技术层出不穷,随着国内中国移动通信和中国联通先后推出WAP手机上网业务,这项新兴的技术也渐渐在国内展露头脚。其实早在1997年,由爱立信、诺基亚、摩托罗拉、 Phone.com等公司共同发起了WAP Forum,随后业界众多的公司纷纷加入,并于1998年4月提出了WAP标准第一版。WAP的全称是“Wireless Application Protocol”,目的是为了在手机以及其他无线设备上面传送和显示数据,以及提供各种电信服务。根据Global Mobile杂志的调查显示,目前至少有2亿个无线用户,而诺基亚公司指出在2005年用户数量更会超过10亿。面对如此广大的使用群,众多的大小公司纷纷抢滩WAP,国内的龙头网站诸如新浪、网易、搜狐等等纷纷联手中国电信推出了基于WAP技术的网站。相信随着WTO的临近,中国的互联网发展的将会越来越快,国内的WAP网站也会越来越多,以适应发展迅速的WAP业务。
作为一名Web网站开发人员,我们在这场席卷全球的无线网络革命中更应当快速跟进,互联网时代是一个不断淘汰的时代,只有随时掌握了最新的技术,才可以跟得上互联网飞一般的脚步。
第一章WAP技术的架构
无线网络和我们目前熟悉的有线网络有很大不同:
第一,市场形态有所不同
1、无线上网设备从一开始就被设计成为易用型,即使没有使用过电脑的用户也可以很快的利用手机快速的在国际互联网上面找到自己想要的信息。
2、就市场大小而言,无线网络的用户成长速度是惊人的,在2001年之前全球有超过5亿3千万移动用户,预计将在2004年突破10亿大关,如此的增长速度令人对WAP的前景充满的信心。
3、有着广阔用户的无线网络,其被期望的值也是很高的,用户希望WAP能够像语音技术一样完善,并且要更加快捷、容易使用等等。
4、WAP手机并不是为在国际互联网上面专门冲浪而设计的,其目的是使得用户在移动的过程中可以方便快捷的存取到互联网上面资料。
第二,网络的环境不同
1、无线网络的带宽较小
2、 无线网络相对目前的国际互联网有较多的等待延迟
3、无线网络的稳定性较差
4、无线接入设备的CPU、内存以及显示屏幕等等有限
针对以上的种种不同,WAP架构有着不同于普通WEB网站的地方,首先,WAP技术是基于目前的WEB架构之上的,并且延伸到无线网络环境,它使得业界所开发的产品能够具有无线网络独立性、设备平台无关性、以及相互操作性。WAP沿用了目前的WEB架构,从而使得目前投放到WEB的资金、设备、人力等等,都能够继续保留并且沿用。WAP不同指出在于她多出了一个被称之为WAPGateWay的东西,Gateway有何作用呢?以Internet设备来讲,Gateway
就类似于Proxy,当客户端要取得某个网站的叶面的时候,都是由Proxy代理来取得,再交给Client端。而WAP Gateway除了代理手机取得所需要的网站的WML文件之外,还要充当转换HTTP协议和WAP协议的角色,从而使得手机顺利取得资料。WAP Gateway大都由电信局或者ISP所设立,而一般的网站,只要在WEB Server中加入相关的MIME格式设定就好了,就可以直接让用户的手机访问到了。
架构描述如下图:
无线设备(手机、PDA)<---->(WAP协定)<---->WAP网关<--->(HTTP协定)<---->WEB服务器<---->数据库服务器
可以看到,WAP Gateway在无线网络数据传送的过程中充当的是一个中间人的角色,有了她,现在已经投到互联网上面的资金、设备、人力等等才不会被WAP网站所废弃,相反的是可以更好的利用现有的几乎所有的资源。
另外,像诺基亚等公司,将WAP网关和WEB服务器整合在了一起,被称之为“Web Application Server”,但是其总体架构和上图仍然是相同的,这里就不再重复了。接下来,我们来看看,为了让用户能够在手机上面访问到我们的网站,应当如何设置目前已经存在的Web Server。
一、Internet Information Server(IIS)
设定方式:打开〔开始〕――〉〔程序〕――〉〔WindowsNT4.0 Option Pack〕――〉
〔Microsoft Internet Information Server〕――〉〔Internet服务管理员〕
在打开的窗口里面选中Server,右键选择“属性”,增加如下的MIME格式:
文件类型 MIME
·WML text/vnd.wap.wml
·WMLC application/vnd.wap.wmlc
·WMLS text/vnd.wap.wmlscript
·WMLSC application/vnd.wap.wmlscriptc
·WBMP image/vnd.wap.wbmp
二、Personal Web Server4
1.打开注册表编辑器,在HKEY_CLASSES_ROOT下面新建一个主键“.WML”;
2.在HKEY_CLASSES_ROOT\.WML下面新建一个字符串,命名为“Content Type”,值为 “text/vnd.wap.wml”;
3.在HKEY_LOCAL_MACHINE\Software\CLASSES\MIME\Database\Content Type新建一个主键“text/vnd.wap.wml”
4.在“text/vnd.wap.wml”主键下面新建一个字符串,名称“Extension”,值为“.WML”;
5.依次重复以上2,3,4步骤,建立其他的MIME类型
三、Linux(Apache)
使用管理员身份登入系统,在命令行,输入“ps -ef”命令兰看看当前的WWW服务是否正常,
然后使用VI来编辑“/etc/httpd/conf/srm.conf”文件,在AddType处增加如下类型:
AddType text/vnd.wap.wml .wml
AddType application/vnd.wap.wmlc .wmlc
AddType text/vnd.wap.wmls .wmlscript
AddType application/vnd.wap.wmlsc .wmlscriptc
AddType image/vnd.wap.wbmp .wbmp
保存后,将httpd重新启动即可。
这样设置过后,我们的Web Server就可以让手机访问得到了,当然,对于普通的HTML文件,手机是无法识别的,手机所要读取得文件类型从上面设置过程我们也可以猜测的
出来,对了就是WML文件。在开始设计WML之前,我们先要来熟悉一下我们的WAP网站开发环境。
第二章 手机仿真开发环境
所谓的手机仿真开发环境,也就是在普通的PC机器上面使用各种模拟器来模拟手机的真实环 境,从而方便WAP网站的开发,目前较为流行的模拟器主要有以下几个:
一、Nokia Toolkit 1.2/1.3
可以从这个地址下载这个仿真开发环境:http://www.nokia.com 目前这个WAP工具包的最高版本是1.3beta,诺基亚公司的这个开发包是采用JAVA编写的,所以你在安装之前首先要安装JRE 2.2以上的版本才可以,JRE可以在SUN公司的主页上面下载 (http://www.sun.com)。诺基亚公司的这个开发工具是一个集成环境,可以方便的编译WML/WMLScript,并且有着详细的WML/WMLScript开发文档,用户可以通过地址栏来装载本地正在开发的WML文件,或者直接浏览互联网上面的WAP网站;但是Nokie Toolkit的运行条件比较苛刻,如果你的机器内存小于128兆,那么运行的速度将大打折扣,没有办法,JAVA编写的程序向来如此的,这也算是一个小小的遗憾吧。1。2的版本没有模拟实际型号的手机,而1.3版本就有模拟产品7110的仿真环境。
二、 Ericsson WapIDE4
爱立信公司推出的一个WAP开发包,和诺基亚公司的开发包类似,爱立信公司的这个工具也是一个集成开发环境,比较方便,可以从这个地址下载:http://www.ericsson.com/wap 。相对于诺基亚公司的WAP开发工具而言,爱立信公司的这个开发工具就较为简陋一些,并且它的开发文档很少,但是它的运行速度要比诺基亚的 那个开发工具包要快的多,尤其是内存在64兆左右的机器。
三、 UP.SDK 4.0
Phone.com公司的UP.SDK产品和上面的两种开发工具相比 就是没有集成的IDE开发环境。这个开发工具可以在: http://www.phone.com取得。
从上面的说明来看,在这三个流行的WAP开发工具中,最具有吸引力的当然就是诺基亚公司的模拟仿真环境了,图形界面以及丰富的开发文档,的确不可多得。另外,还有其他的一些可以浏览WAP网站的软件,比如WinWAP,WAPMan等等,他们都是可以直接在PC机上面直接来浏览WAP网站的软件,值得一提的是,Opera公司推出的4.0版本的浏览器就已经支持直接在浏览器中访问WAP网站了,这个小巧的浏览器功能很是强劲。相信微软也不会坐视不等,可能在IE的后续版本中增加支持WML文件的功能。
上面的WAP仿真开发环境的安装后的设置都比较简单,稍微懂一些英文的都会看得懂的。
第三章 WML/WMLScript设计
现在我们来正式设计我们的WAP站点,正如目前的WEB网站是基于HTML语言一样,WAP网站是基于WML语言的,而WML语言其实是遵循目前的XML技术的,不过你如果不懂XML也不要紧的,还是可以很快入门的。
WML和以往的HTML语言最大的不同是,WML语言的限制非常严格,表现在下面几个方面:
1、 WML中的所有标签、属性都是区分大小写的
2、 对于连续的空格,WML编译器将认为是一个
3、 所有标签的属性都需要使用双引号括起来
4、 所有的标签都必须封闭,对于不成对出现的标签,必须在“>”之前加上“/”,比如“<br/>”
一定要注意上面的要点,否则很有可能出现手机无法浏览WML的情况出现。做到这一点,只是习惯的问题,主要是我们在HTML时代养成的“懒散”习惯不太好,都是IE的兼容性太好惹得祸,^_^
在WML中,最基本的单位叫做“card”,他被用来向用户提供交互界面,这其实也是为了照顾到手机的屏幕比较小而设计的,并且手机的处理能力有限,不可能像我们经常使用的IE等浏览器那样一次将整个页面载入,在使用滚动条来察看内容,被设计用于手机浏览的WML文件,一个最大不能超过1.4K,所以我们才将大的叶面分割成为若干个card,来一次显示;多个“card”就组成了一个 “Deck”,也即使一个“层面”,一个WML文件中只允许出现一个层面,正如HTML中只用一个 “<html></html>”标签一样。
另外还要记住,只要想显示一些文字到手机上面,就必须使用"<p></p>"标签将这一段文字括住。不再罗嗦,下面我们就先看看一个简单的例子:HelloWorld
<?xml version="1.0"?>
<!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN"
"http://www.wapforum.org/DTD/wml1_1.1.xml">
<wml>
<card id="hello" title="WAP">
<p>Hello! World!</p>
<!-- 注释信息 - ->
</card>
</wml>
将这个文件存盘,在诺基亚仿真浏览器中浏览就可以看到你向WAP世界的问候语了。我们可以看到,在WAP中的注释方法同HTML中是一样的。要注意的是每一个card的id属性是不允许省略的,并且在默认的情况下手机显示的是这个“层面”的第一个“卡片”,当然我们也可以直接指定要浏览的特定“卡片”,后面我们会提到。
怎么样,看看这第一个例子,觉得WML并不是很难吧,要比HTML还要简单呢,只是它的限制稍微多一些而已,接下来我们来看看WML中其他有用的标签:
标签:<wml></wml>
描述:定义“层面”的开始和结束,一个WML文件只允许一个层面
标签:<card></card>
描述:定义“卡片”的开始和结束,多个“卡片”组成一个“层面”
id属性必须要给出,用以区分不同的“卡片”
title属性指明提示信息
标签:<p></p>
描述:用来显示文字的标签
标签:<img src="" alt="" localsrc="" align="left" height="" width="" vspace="" hspace="">
描述: alt属性用来指定图片没有正常显示时的提示信息 ,src属性指定图片的路径
以上两个属性是必须的
其他的属性类似于HTML语言
标签:<do type="" label="" name="" option=""></do>
描述: 执行某些动作,其中属性type是必须的。
type值 触发事件
accept 触发确认
delete 触发删除
help 触发帮助
options 触发选择
prev 返回上一页
reset 清除目前状态
标签:<go href=""/>
描述:当用户点击了do标签之后,就可以使用这个标签
连接到其他的“卡片”或“层面”
要指定它的“href”属性。
标签:<timer value="">
描述:设定计时器的时间,以0.1秒为单位,同一个“卡 片”只能有一个timer标签。到达特定时间后会触 发ontimer事件
标签:<a href=""> </a>
描述:类似HTML中的同样标签
标签:<go method="" href=""></go>
描述:类似于HTML中的form标签,method属性的值:post/get
标签:<postfield name="" value=""/>
描述:设定变量的名字和值,这些值可以被服务器端的ASP,JSP等程序捕获。
标签:<input type="text/password" name="" value=""/>
描述:提供输入的表单,类似于HTML$(name)
描述:获取变量的值
以上就是在WML中经常用到的标签,当然还有很多标签,你可以在Nokia Toolkit中找到详尽的语法,这里就不再重复了。要注意的是,在WML中使用的图片格式不同于平常的图片,而是要使用WBMP格式的图片,这种图片是黑白两色的专为手机提供的图片格式,你可以下载Photoshop的WBMP插件,用来编辑WBMP格式的图片,或者网络上面有很多的工具可以转换其他格式的图片到WBMP格式。
接下来我们要介绍一下运行在手机上面的script程序:WMLScriptWMLScript语言和JavaScript语言非常相似,不同之处在于WMLScript语言必须放在一个WMLS的文件里面,并不像javascript那样可以镶嵌在HTML中, 并且WMLS文件的大小也不要超过1.4K
分享到:
相关推荐
【WAP基础教程_WML基本知识】是一篇关于WAP技术及其相关开发工具的教程,主要面向想要深入了解WAP建站的读者。WAP(Wireless Application Protocol)是一种无线应用协议,它允许移动设备通过无线网络访问互联网内容...
wap教程 wap教程wap教程 wap教程
WAP基础** WAP主要由三部分组成:WAP协议栈、WAP网关和WAP终端。WAP协议栈定义了无线环境下的通信标准,WAP网关则作为传统互联网和移动网络之间的中介,而WAP终端包括支持WAP的手机或设备。 **2. WAP页面格式** ...
1. **WAP基础知识**: WAP是为了解决移动设备的屏幕小、带宽有限等问题而设计的。它使用一种称为WML(Wireless Markup Language)的标记语言来简化网页内容,使其更适合小屏幕显示。同时,WAP还引入了WAP Gateway,...
WAP基础 WAP协议栈是基于开放的Internet协议,它简化了HTTP协议以适应低带宽、高延迟的无线网络环境。WAP 1.x主要采用WML(Wireless Markup Language)进行内容呈现,而WAP 2.0引入了对HTML和CSS的支持,提升了...
**一、WAP基础** WAP协议栈由四个主要层次构成:物理层、数据链路层、网络层和应用层。物理层主要负责无线传输,而上三层则对应于TCP/IP模型的相应部分。WAP的主要目标是使非智能设备能够通过简化的HTTP协议访问...
**WAP基础** 1. **WAP架构**:WAP采用了分层的结构,包括用户代理(手机浏览器)、WAP网关、WAP服务器和传统互联网服务器。这个架构使得非智能设备也能访问复杂的互联网内容。 2. **WAP协议栈**:WAP协议栈由四个...
1. **WAP基础**:介绍WAP协议栈的构成,如WDP(Wireless Datagram Protocol)、WSP(Wireless Session Protocol)等,以及它们在无线通信中的作用。 2. **WML语言**:WML是专为WAP设计的标记语言,类似于HTML,但更...
一、WAP基础知识 WAP是一种为无线通信设备设计的开放标准协议,它允许用户通过GPRS、EDGE等移动网络访问互联网内容。WAP的核心是WML(Wireless Markup Language),这是一种简化版的HTML,专为小屏幕和低带宽环境...
**WAP基础** WAP协议基于分层结构,类似于电脑网络中的TCP/IP模型。最底层的协议处理移动网络特有的问题,而最上层则采用了HTTP协议,确保了与互联网的兼容性。WAP协议允许开发者使用类似Web开发的技术,如CGI或ASP...
#### 第二节:WAP基础 WAP v1.1是一种开放标准,旨在规范移动电话访问信息和服务的方式。该标准由WAP Forum开发,这是一个由多个组织构成的非营利团体。预计1.2版本将是最后一个版本,它将进一步完善现有的WAP规范...
标题:“WAP2.0从基础到精通” 描述:“WAP2.0从基础到精通详细教程.pptx” 标签:“WAP2.0” 从上述信息中,我们可以提炼出以下详细的知识点: ### WAP2.0概述 WAP2.0(Wireless Application Protocol Version...
**WAP建站基础教程——WAP初学者必读** WAP(Wireless Application Protocol,无线应用协议)是一种为移动设备提供互联网接入的技术标准。它允许用户通过移动电话或者其他无线设备访问网页、发送电子邮件、获取新闻...
1. **WAP基础知识** - **WAP协议栈**:WAP协议栈由多个层次组成,包括无线传输层、网络层、会话层和应用层,每个层次都有其特定的功能,共同确保数据的无线传输。 - **WML(Wireless Markup Language)**:WAP的...
### WAP基础知识详解 #### 一、WAP概念解析 WAP全称为Wireless Application Protocol(无线应用协议),是一项国际性的技术标准,旨在为移动设备提供互联网接入服务。通过WAP,用户可以利用手机等移动终端访问特定...
**WAP基础** 1. **WAP介绍**:无线应用协议(WAP)是为了适应无线通信环境而设计的一种协议,它基于互联网的HTTP/HTML协议,但针对无线设备的局限性进行了调整,如小屏幕、低功耗、小内存和低CPU性能。WAP协议包括...
在原来的WAP基础上,稍微修改了下,可能不少人会用到。因为自己要用的时候,搜遍论坛也找不到解决方法,只能自己琢磨着修改。 本来是想发在二次开发版块的,但该版块不让保存附件,只能发到这里来了~ 我的PHP...
一、WAP基础知识 WAP(Wireless Application Protocol)无线应用协议是一种在移动设备上访问互联网的技术,它使用户可以通过手机浏览网页、发送邮件、购物等。WAP网站通常采用简化版HTML语言(WML或XHTML MP)和CSS...
下面将详细介绍WAP建站的基础知识。 一、WAP协议与WAP建站环境 1. **WAP协议栈**:WAP协议栈由四层构成,包括物理层、链路层、网络层和应用层。物理层处理无线传输,链路层负责数据打包,网络层采用WAP网关服务...