asp.net开发wap必备:更好的匹配手机设备

虽然微软说asp.net能够匹配各种手机设备,但是手机型号众多,微软收集的手机资料有限,所以导致 asp.net对很多手机匹配错误,本来可以支持html的却生成html,本来只支持wml的,缺生成了html导致手机无法浏览;我们不能等待微软偶尔发布一个设备更新包---更新有限的手机设备资料,这里我们自己都可以做:

asp.net识别设备型号是靠machine.config或者web.config对http协议HTTP_USER_AGENT 设备标示来匹配的,具体的你可以打开machine.config里面打开

 1<browsercaps>节来看看。 
 2
 3下面是“强制特定手机生成WML” 详细的代码,在web.config里的<system.web>节添加以下代码: 
 4
 5&lt; browserCaps  &gt;
 6
 7&lt; result  type  ="System.Web.Mobile.MobileCapabilities, System.Web.Mobile, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"  /&gt;
 8
 9&lt; use  var  ="HTTP_USER_AGENT"  /&gt;
10
11&lt; filter  &gt;
12
13&lt; case  match  ="SEC-SGHX458|  Motorola-T33  "&gt;
14
15preferredRenderingType = "wml11" 
16
17preferredRenderingMime = "text/vnd.wap.wml" 
18
19preferredImageMime ="image/vnd.wap.wbmp" 
20
21
22
23</system.web></browsercaps>

代码说明:

这里强制生成wml
preferredRenderingType = "wml11"
preferredRenderingMime = "text/vnd.wap.wml"
preferredImageMime ="image/vnd.wap.wbmp"

最重要就是

< case match ="SEC-SGHX458| Motorola-T33 ">

这里是在匹配设备,可以参考 正则表达式 语法, SEC-SGHX458 代表三星X458, Motorola-T33 代表摩托e360

这些字符可以参考的另外一篇文章:

http://blog.csdn.net/Qqwwee_Com/archive/2005/09/10/477189.aspx

Published At
Categories with Web编程
Tagged with
comments powered by Disqus