最近要开发一个wap网,找了些资料转载一下,
1.模拟器选择:
WINWAP,
M3Gate,
UP.SDK4.0,(推荐)
OPenWave 5.0 (测试时需要), 下载http://developer.openwave.com/
OPenWave6.2, (IIS 6.0应用,IIS5.0可能显示,但会有问题)
CheckCom WAPBrowser 3.2
模拟器问题:
ASP.NET把一些常有的模拟器,的配制信息用正则表达式写在Machine.config里
在上述的模拟器中,我只有UP.SDK4.0,OPenWave 5.0,
他们只是一个公司的产品:
需要下载,配制文件驱动更新:现在最新版本是:Device 4下载请到这里下载:
http://www.microsoft.com/downloads/details.aspx?FamilyId=02FA15FE-40D9-4DCE-9BB1-4DD61A5B7CCB&displaylang=en
但是,即使驱动更新以后,还是一些设备不能访问:
这时需要强制输出WML:
在web.config
添加下面内容<system.web>下
<
browserCaps
>
<
result type
=
"
System.Web.Mobile.MobileCapabilities, System.Web.Mobile, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
"
/>
<
use var
=
"
HTTP_USER_AGENT
"
/>
preferredRenderingType
=
"
wml11
"
preferredRenderingMime
=
"
text/vnd.wap.wml
"
preferredImageMime
=
"
image/vnd.wap.wbmp
"
</
browserCaps
>
如果定义相关其它属性可以完整的移动设置属性:
<
browserCaps
>
<
result type
=
"
System.Web.Mobile.MobileCapabilities, System.Web.Mobile, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
"
/>
<
use var
=
"
HTTP_USER_AGENT
"
/>
![None.gif](/Images/OutliningIndicators/None.gif)
browser
=
Unknown
version
=
0.0
majorversion
=
0
minorversion
=
0
frames
=
false
tables
=
false
cookies
=
false
backgroundsounds
=
false
vbscript
=
false
javascript
=
false
javaapplets
=
false
activexcontrols
=
false
win16
=
false
win32
=
false
beta
=
false
ak
=
false
sk
=
false
aol
=
false
crawler
=
false
cdf
=
false
gold
=
false
authenticodeupdate
=
false
tagwriter
=
System.Web.UI.Html32TextWriter
ecmascriptversion
=
0.0
msdomversion
=
0.0
w3cdomversion
=
0.0
platform
=
Unknown
css1
=
false
css2
=
false
xml
=
false
![None.gif](/Images/OutliningIndicators/None.gif)
mobileDeviceManufacturer
=
"
Unknown
"
mobileDeviceModel
=
"
Unknown
"
![None.gif](/Images/OutliningIndicators/None.gif)
gatewayVersion
=
"
None
"
gatewayMajorVersion
=
"
0
"
gatewayMinorVersion
=
"
0
"
![None.gif](/Images/OutliningIndicators/None.gif)
preferredRenderingType
=
"
wml11
"
preferredRenderingMime
=
"
text/vnd.wap.wml
"
preferredImageMime
=
"
image/vnd.wap.wbmp
"
![None.gif](/Images/OutliningIndicators/None.gif)
defaultScreenCharactersWidth
=
"
12
"
defaultScreenCharactersHeight
=
"
6
"
defaultScreenPixelsWidth
=
"
96
"
defaultScreenPixelsHeight
=
"
72
"
defaultCharacterWidth
=
"
8
"
defaultCharacterHeight
=
"
12
"
screenBitDepth
=
"
1
"
isColor
=
"
false
"
inputType
=
"
telephoneKeypad
"
![None.gif](/Images/OutliningIndicators/None.gif)
numberOfSoftkeys
=
"
0
"
maximumSoftkeyLabelLength
=
"
5
"
![None.gif](/Images/OutliningIndicators/None.gif)
canInitiateVoiceCall
=
"
false
"
![None.gif](/Images/OutliningIndicators/None.gif)
canSendMail
=
"
true
"
hasBackButton
=
"
true
"
rendersWmlDoAcceptsInline
=
"
true
"
rendersWmlSelectsAsMenuCards
=
"
true
"
rendersBreaksAfterWmlAnchor
=
"
false
"
rendersBreaksAfterWmlInput
=
"
false
"
rendersBreakBeforeWmlSelectAndInput
=
"
true
"
requiresAttributeColonSubstitution
=
"
true
"
requiresPhoneNumbersAsPlainText
=
"
false
"
requiresUrlEncodedPostfieldValues
=
"
false
"
requiredMetaTagNameValue
=
""
rendersBreaksAfterHtmlLists
=
"
true
"
requiresUniqueHtmlCheckboxNames
=
"
true
"
requiresUniqueHtmlInputNames
=
"
true
"
requiresUniqueFilePathSuffix
=
"
true
"
supportsCss
=
"
false
"
hidesRightAlignedMultiselectScrollbars
=
"
false
"
canRenderAfterInputOrSelectElement
=
"
true
"
canRenderInputAndSelectElementsTogether
=
"
true
"
canRenderOneventAndPrevElementsTogether
=
"
true
"
canCombineFormsInDeck
=
"
true
"
canRenderMixedSelects
=
"
true
"
canRenderPostBackCards
=
"
true
"
canRenderSetvarZeroWithMultiSelectionList
=
"
true
"
supportsImageSubmit
=
"
true
"
supportsSelectMultiple
=
"
true
"
requiresHtmlAdaptiveErrorReporting
=
"
false
"
requiresContentTypeMetaTag
=
"
false
"
requiresDBCSCharacter
=
"
false
"
requiresOutputOptimization
=
"
false
"
supportsAccesskeyAttribute
=
"
false
"
supportsInputIStyle
=
"
false
"
supportsInputMode
=
"
false
"
supportsIModeSymbols
=
"
false
"
supportsJPhoneSymbols
=
"
false
"
supportsJPhoneMultiMediaAttributes
=
"
false
"
maximumRenderedPageSize
=
"
2000
"
requiresSpecialViewStateEncoding
=
"
false
"
requiresNoBreakInFormatting
=
"
false
"
requiresLeadingPageBreak
=
"
false
"
supportsQueryStringInFormAction
=
"
true
"
supportsCacheControlMetaTag
=
"
true
"
supportsUncheck
=
"
true
"
canRenderEmptySelects
=
"
true
"
supportsRedirectWithCookie
=
"
true
"
supportsEmptyStringInCookieValue
=
"
true
"
cachesAllResponsesWithExpires
=
"
false
"
requiresNoSoftkeyLabels
=
"
false
"
defaultSubmitButtonLimit
=
"
1
"
supportsBold
=
"
false
"
supportsItalic
=
"
false
"
supportsFontSize
=
"
false
"
supportsFontName
=
"
false
"
supportsFontColor
=
"
true
"
supportsBodyColor
=
"
true
"
supportsDivAlign
=
"
true
"
supportsDivNoWrap
=
"
false
"
supportsCharacterEntityEncoding
=
"
true
"
![None.gif](/Images/OutliningIndicators/None.gif)
isMobileDevice
=
"
false
"
</
browserCaps
>
.链接:
在同一个aspx文件,使用Link控件的,#FORM来切换不同Form时在 OPenWave 5.0测试会出现错误!
建议在程序通过ActiveForm来做
3.乱码:
如果在开发过程出现乱码,通过修改Web.Config
<globalization
requestEncoding="gb2312"
responseEncoding="gb2312"
/>
4.取消移动设备缓存:
Page.Response.Expires
=
-
1
;
Response.CacheControl
=
"
Public
"
;
5.重定向
重定向通过
RedirectToMobilePage函数
不过使用过程中可能会出现一些问题
建议用Link控件来代替
一些开发资料:
http://msdn.microsoft.com/mobility/downloads/sdks/default.aspx
http://www.dotnet247.com/247reference/__site/72
http://www.wapease.com
http://www.sp-forum.org/download/list.asp?type=14
http://www2.chn.monternet.com:8080/devdownload/DevWapSimulator.jsp
http://www.tech-archive.net/Archive/DotNet/microsoft.public.dotnet.framework.aspnet.mobile/