`
pumaboyd
  • 浏览: 241981 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

.NET WAP开发及兼容问题

    博客分类:
  • wap
阅读更多

.NET WAP开发中遇到的问题汇总,主要总结一下在.NET WAP开发下浏览器的兼容及相关问题的处理。针对的是WML1.1的规范。

设置Emptyok= “true”
在WML中input 标签有一个emptyok的属性。表示用户可否不填输入框,默认为false,即要填,为true时可以不填。从理论上讲这是一个很好的属性,可以减少用户输入为空的判断。但实际运用中,首先不是所有手机浏览器支持,但最严重的问题是,一但你设置了emptyok=false,在有些手机中会将整个页面的 URL的链接点击都触发这个是否为空的判断。所以从兼容性的角度,请设置emptyok=true,在后代码进行判断。
WML实体替换

wml_spcial_word
来自:http://www.w3school.com.cn/wap/wml_entities.asp

这是个很通用的问题,也就是说,要对WAP下的输出进行文本内容替换。

data = data.Replace(”&”, “&”);
data = data.Replace(”\”", “”");
data = data.Replace(”‘”, “‘”);
data = data.Replace(”<”, “<”);
data = data.Replace(”>”, “>”);

主要还是上面5个特殊字符的替换,空格是一个比较特殊的例子。下面我会具体解释.

WML下的空格
从理论上空格只要替换成  &nbsp; 这个实体就可以了。可有些手机中确直接显示 &nbsp;  ,当然你不是很在意可以忽略。但这里可以提供一个好的解决办法,就是将空格替换成实体编码 &#160;这样基本上有空格的地方都显示正常了。

不使用CData嵌套内容
XML中的CData其实就是为了解决长文本中含有特殊字符的问题。但如果你希望通过<–!CData[]–>,而不是采用特殊字符替换成实体。你会发现有些手机浏览器,直接将这段内容不显示。所以,在目前的情况下,还是请使用WML实体替换吧。

IE下显示WAP页面
大家都知道,在IE下如果直接访问WML1.1的WAP站点,会提示你文件下载。但如果你希望在IE下也可以正常访问WML1.1,而用户又不需要通过安装或设置,或是通过第三方网站。你可以通过URLRewrite的方式,只要IE访问的WAP1.1的站点请求的页面后缀是*.html,*.htm等的,同样可以直接访问WAP站点,而不会提示文件下载。

防止客户端手机缓存页面

手机客户端默认情况下可能会缓存经访问过的页面内容,这样有可能照常用户看到的内容不是更新的,所为一般情况,会要求客户端不缓存页面内容。在输入的内容页中添加如下<meta http-equiv=“Cache-Control” content=“no-cache”>即可。其原理和www网站类似。

WAP编码问题
不累赘,可以参考 使用.NET进行WAP开发 一文

Request参数读取
这个就要提到asp.net中参数读取问题。

request["key"]
request.form["key"]
request.query["key"]

基本上就三种,第一种会自动判断是form还是query,但在WAP开发中需要明确指定request.form还是request.query,如果使用第一种在有些手机中将无法读取到参数值。这是个很迷惑的问题,但还是请指明读取的方式。

card包含P标签

也是手机兼容的问题。主要还是标签的写法上。如果直接在节点中输入内容,有些手机将无法正确读取。所以card下面至少要包含一个标签p。<card><p></p></card>

使用相对路径,而不是绝对路径
这个问题的实质是因为使用了ASP.NET的自动支持Cookie的问题。在.NETWAP开发一文中,提到在不支持Cookie的手机中,ASP.NET会自动将当前的SeesionID隐藏在url中。这样如果你直接使用 “/search.aspx”,这样的绝对路径,将会丢失sessionid。所以在WAP的架构和设计上我们采用一层目录的概念,来简化开发中对 seesionid的处理。如果你使用.NET,并且希望更好的支持手机客户端,目前的经验使用相对路径是最好的选择。

大概总结到这,目前我们已经升级到WAP2.0了,也碰到不少兼容的问题,还正在解决中,也希望大家有好的经验来分享。感觉相比WWW,Moile 市场的浏览器更是混乱。而且WAP2.0比WAP1.1的兼容问题,更麻烦。 就连同一型号,同样内置,同样版本的手机,也有兼容问题。

分享到:
评论
1 楼 Tomzheng 2010-03-25  
哥们厉害。继续总结,受教!

相关推荐

    柯林WAP 8.0第八次升级100525 DIY版2010-05-27 08:56:31 |

    一、升级方法: 第一步:先将目录ABC上传至你网站根目录。 ...sid=你超级管理员登录后的sid值 ... 第三步:提成OK后,将本升级目录上传覆盖。....NET版开发中,正版免费升级! 柯林官方网站:http://kelink.com

    BlackBerry开发平台配置及入门介绍(傻瓜教程)

    BlackBerry开发平台配置及入门介绍(傻瓜教程) TAG:BlackBerry 开发环境 配置 教程 Cindigo整理发布,资料来自于RIM中国公司·杨江,谨此致谢! 黑莓(BlackBerry)手机简介: 所谓“黑莓”(BlackBerry)是...

    人才招聘系统全新支持APP客户端、微信招聘、互动问答、智能搜索、会员积分、短信、地图找工作、WAP手机频道等

    人才招聘网站管理系统采用asp.NET(C#)三层结构开发;采用sql server数据库,数据容量巨大,快速,稳定是建立大型人才网站的好程序,采用全新的生成静态页技术;数据处理方面采用全存储过程实现,可快速实现大批量数据...

    MolyX BOARD 2.5.0 RC 简体中文标准版

    包括BUG所反映的所有问题 - 修正邮件系统发送UTF-8文字兼容性问题 - 更多的代码优化 &lt;br&gt;中国论坛网推荐" src="http://www.51one.net/softimg/20051212110443.gif" width="126" height="96"&gt;

    迷你IIS服务器 智能端口谢寅修正窗口版

     迷你IIS服务器 提供 Microsoft IIS 5.0 兼容的 Active Server Pages 模块,不用修改代码直接将已经存在的使用 ASP 开发的应用程序移植到 迷你IIS服务器 平台上来,也可以直接使用已经存在所有 COM 组件。...

    桃源企业文件管理系统 3.2.rar

    《桃源企业文件管理系统》主要部署在windows操作系统基础上,安装前需装Microsoft.NET Framework SDK2.0、3.0或3.5(2003系统自带该组件),应用软件管理目录具有IIS及asp.net完全权限。 在上述系统应用环境中,部署...

    云乐 BLOG 2.0 JSP博客系统.rar

    保障了网站的安全、稳定、高速,有效的解决了网站其他语言版本的兼容性问题。操作简单方便,功能强大。 【功能简介】 系统包括了日志、日志评论、流量统计、相册、相册评论、相册加密、个人资料、留言、背景音乐、...

    基于J2EE框架的个人博客系统项目毕业设计论文(源码和论文)

    3. Web服务器:Tomcat 5.5及以上版本,配合MVC设计模式及 Hibernate开发架构; 4. 客户端运行环境:能运行IE 5以上或Netscape 5以上浏览器的操作系统,配合使用Ajax技术; 5. 客户端运行工具:目前的系统采用...

    桃源企业文件管理系统 v3.3.zip

    一些浏览器兼容性问题   旧版用户升级方法: 1.上传除web.config文件、data目录之外的所有文件 2.在浏览器地址栏使用http://程序地址/update.aspx(注意为aspx后缀,非asp)方式浏览,看到升级成功字样即升级...

    JAVA上百实例源码以及开源项目源代码

     用JAVA开发的一个小型的目录监视系统,系统会每5秒自动扫描一次需要监视的目录,可以用来监视目录中文件大小及文件增减数目的变化。 Java日期选择控件完整源代码 14个目标文件 内容索引:JAVA源码,系统相关,日历,...

    JAVA上百实例源码以及开源项目

     用JAVA开发的一个小型的目录监视系统,系统会每5秒自动扫描一次需要监视的目录,可以用来监视目录中文件大小及文件增减数目的变化。 Java日期选择控件完整源代码 14个目标文件 内容索引:JAVA源码,系统相关,日历,...

    WordPress v2.0.6简体中文版

    您现在可以通过一些工具发表文章,比如Ecto、BlogBuddy、Bloggar、WapBlogger(从您的Wap手机上发表文章!)、RadioUserland(您可以使用Radio的Email到Blog功能)、Zempt、NewzCrawler,和其它一些支持BloggingAPI的工具...

    网软志成人才招聘管理系统支持APP手机客户

    人才招聘网站管理系统采用ASP.NET(C#)三层结构开发;采用sql server数据库,数据容量巨大,快速,稳定是建立大型人才网站的好程序,采用全新的生成静态页技术;数据处理方面采用全存储过程实现,可快速实现大批量数据...

    桃源企业文件管理系统源码 v3.2

    11、完善的日志记录功能:后台管理员及用户前台的各种操作行为,访客或其它用户对有关用户文件进行的操作均会产生实时操作日志,以便于出现问题追根溯源。 12、文件(公文)签收审批:前台用户得到他们共享给其的...

Global site tag (gtag.js) - Google Analytics