Tải bản đầy đủ (.pdf) (10 trang)

Webmaster''''s Guide to the Wireless Internet part 16 ppt

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (228.27 KB, 10 trang )

122
Table 3.33 The Various Microbrowsers and Their Capabilities
WML1.1 with
Browser HDML 3.0 WML 1.1 Openwave WMLScript 1.1
Browser Version Support Support Extensions Support
Openwave 4.x Yes, via Mobile Yes Yes Yes
Mobile Access Gateway** Recommended Recommended
Browser* translation
service
Openwave 3.1 Yes Yes, via Mobile No No
Mobile Recommended Access Gateway**
Browser* translation service
Openwave 3.0 Yes No No No
Mobile Recommended
Browser*
Other Any No Yes No Yes
Recommended Recommended
* formerly UP.Browser ** formerly UP.Link (Source: Openwave)
159_wg_wi_03 10/22/01 4:33 PM Page 122
A New Markup: WML • Chapter 3 123
<parent 1>
<element 1>
</element 1>
</parent 2>
<parent 2>
<element 2>
</element 2>
</parent 2>
The Openwave extensions take this concept a stage further. By dividing the
tasks you wish to carry out into a hierarchical series and applying context to the
specific children, it becomes much easier to handle such things as the user inter-


face, the use of variables, and the exchanging of information between contexts.
Navigation within the current context is possible in WML using the <go>
and <prev> elements. However, using the Openwave extensions, we can carry on
further to provide contextual navigation. Because the Openwave extensions are
not covered by the current WML specification, remember to reference their
DTD instead at the beginning of the WML document as follows:
<?xml version="1.0"?>
<!DOCTYPE wml PUBLIC "-//PHONE.COM//DTD WML 1.1//EN"
" >
Using the <spawn> and <catch> Extensions
The <spawn> element allows navigation from a parent to a child in a similar way
to a <go> task. However, using the <spawn> element spawns a new nested con-
text.When this context is exited, the user is returned to the parent context.This
may seem somewhat trivial, but the use of <spawn> allows users to browse a
number of possible cards within this context while returning to the parent con-
text in one move (as opposed to <go>/<prev> where all viewed cards would
have to be navigated through to reach the parent card).This can be a powerful
way to manage how the user navigates by condensing many frustrating clicks into
one click.
<spawn href="url.wml">
</spawn>
www.syngress.com
159_wg_wi_03 10/22/01 4:33 PM Page 123
124 Chapter 3 • A New Markup: WML
The <spawn> tag can contain the <catch> element to trap any errors:
<spawn href="url.wml">
<catch/>
</spawn>
Using the <exit> and <throw> Extensions
In addition to the <prev> task, the <exit> and <throw> extensions allow navi-

gation back to the parent context.As noted previously, <throw> allows excep-
tions to be trapped and handled accordingly using <catch>.The <exit> element
is used to cater for a specific eventuality, returning the user to the parent context
where the spawn attribute <onexit> is used to specify what should happen:

<do type="options" label="Return">
<exit/>
</do>
<do type="options" label="Exit">
<throw name="abort"/>
</do>

Using the <catch> Extension
The <catch> element provides a series of mechanisms to trap errors.This very
useful element allows different situations to be dealt with accordingly. For
example, if the user cancels a request, you may want to handle what happens as a
result differently than, say, the user encountering an error from the server:
<card>
<do type="accept" label="Choice">
<spawn href="submit.wml" onexit="#success">
<catch name="error" onthrow="#error1"/>
<catch name="cancel" onthrow="#error2"/>
</do>
</card>
www.syngress.com
159_wg_wi_03 10/22/01 4:33 PM Page 124
A New Markup: WML • Chapter 3 125
Using the <send> and <receive> Extensions
When the user returns to the parent context, you may want to bring back some
information with them as the result of a task that was carried out.The <send>

and <receive> elements allow data to be sent from the nested child context and
received in by the parent context.The following is an example of using <send>:
<card>

<send value="x"/>
<send value="y"/>

</card>
The following is an example of using <receive>:
<card>

<receive name="value1"/>
<receive name="value2"/>

</card>
NOTE
The ordering of the names and values is important. In the preceding
examples, the receiving deck will assume that the value for value1 will be
x and that the value for value2 will be y. If y appeared before x, the
value of value1 would be y.
Preloading URLs
The <link> element is used to preload a URL into the device, and you should
use it only when you know that the user will probably want to follow this link.A
common use may be to preload the next page in a news item.The link element
is placed within the head of the document:
www.syngress.com
159_wg_wi_03 10/22/01 4:33 PM Page 125
126 Chapter 3 • A New Markup: WML
<head>
<link href="next_url.wml" rel="next"/>

</head>
WML Editors, WAP SDKs, and Emulators
A whole plethora of tools are available to the aspiring wireless developer.They
range from freeware and shareware items to full-blown SDKs from phone manu-
facturers such as Nokia and Openwave.Those with a degree of experience using
HTML editors will be pleased to know that most of the popular HTML editors
support editing WML.
WML Editors
If you are comfortable with hand-coding WML,Allaire’s Homesite is a great
editor that comes with the ability to work with WML.Although not immediately
apparent, you can enter WML and use the context-sensitive menus to access all
the various attributes, as shown in Figure 3.7. Homesite is inherently extensible,
so if you don’t like how it does things, you can always rewrite it.
www.syngress.com
Figure 3.7 Allaire Homesite
159_wg_wi_03 10/22/01 4:33 PM Page 126
A New Markup: WML • Chapter 3 127
If you aren’t quite ready to work with raw WML code, the Macromedia
WML Studio extension may interest you. Developed by Nokia, the WML Studio
allows the creation of WML pages from within Macromedia’s popular editor
Dreamweaver.
The Nokia WML Studio for Dreamweaver is an extension to Dreamweaver
that you can download from the Macromedia Web site. It allows the creation of
WML content within Dreamweaver’s what you see is what you get
(WYSIWYG) environment, as shown in Figure 3.8.
The extension includes a WML 1.1 parser, error notification, plus the ability
to show previews of the WML content.
NOTE
At the time of this writing, the WML Studio was not compatible with
Macromedia UltraDev 1 or UltraDev 4 and is unfortunately not available

to Apple Macintosh users.
www.syngress.com
Figure 3.8 Macromedia Dreamweaver Together with the WML Studio
Extension from Nokia
159_wg_wi_03 10/22/01 4:33 PM Page 127
128 Chapter 3 • A New Markup: WML
EasyPad WAPtor (shown in Figure 3.9) is a simpler WML editor available for
Windows users. It allows the easy creation of WAP pages and in fact is specifically
designed to ease WML creation.WAPtor features syntax highlighting to allow the
WML to be more easily navigated and also has a content preview pane so you
can see how you are doing at any time.The preview is limited, however (for
example, there is no provision for handling WMLScript), but it can be helpful
when getting started.
Supporting WML 1.1,WAPPage 2.1 allows the easy creation and mainte-
nance of WML content without users necessarily needing to know too much
about WML.WAPPage shows the content in an emulated WAP handset, and you
can navigate the WML content by using the built-in tree view.The compiler
allows you to quickly locate errors and projects help you group files together.As
with many other editors, it features syntax highlighting but also features drag-
and-drop WML editing.
www.syngress.com
Figure 3.9 EasyPad WAPtor
159_wg_wi_03 10/22/01 4:33 PM Page 128
A New Markup: WML • Chapter 3 129
Other Editors
Many other editors are available, some freeware, some shareware, and others full-
blown retail products, so you should easily be able to find the editor that suits
your style of working.The following list covers some of the more well-known
editors:


Card One offers a simple point-and-click interface to WML creation
and is available from www.peso.de/wap_en/index.htm.

DotWAP is a basic but popular editor for creating WML files and is
available from www.inetis.com/freeware.asp.

Santana Builder is a WML editor for the more advanced developer
that can connect to databases for complex interactive site creation and is
available from www.inetis.com/santanabuilder.asp.

WAPPage is a WML editor with drag-and-drop functionality, visual
editing, and helpful syntax highlighting together with a number of ways
of previewing WML.WAPPage is available from
www.zyglobe.com/products.html.

Wap Pro 2.0 features extensive support for the WML standard and also
allows code created for dynamic applications using ASP, PHP3, and Cold
Fusion among others and is available from www.wapemperor.com.

WBuilder Espresso is a template-based editor that features WYSIWYG
editing,WML site previews, and site publishing. WBuilder Pro is also
available and offers workflow solutions.You can find both at
www.3tl.com/products/espresso/index.htm or www.3tl.com/
products/pro/index.htm.

WML Writer is a simple WML creation editor reminiscent of
Microsoft’s WordPad but features syntax highlighting and the creation of
full WML files.WML Writer is available from />zdravko/index.htm.

XML Spy is a full-featured XML editing tool for those who want max-

imum control.You can use XML Spy to create WML files. For the more
experienced user at home with the various WML elements, XML Spy
provides XML validation, custom schema, DTD editing and creation,
and more. XML Spy is available at www.xmlspy.com.
www.syngress.com
159_wg_wi_03 10/22/01 4:33 PM Page 129
130 Chapter 3 • A New Markup: WML
WAP SDKs
WAP SDKs offer a number of tools to developers to speed the creation of WAP
sites.They generally contain at least a WML editor and an emulator to view con-
tent in. Some even go as far as to include a dedicated WAP gateway to simulate
live requests and other tools such as WBMP creation and manipulation tools.The
following sections outline the features of several WAP SDKs.
Ericsson WapIDE SDK
Available through registration at the Ericsson Developers’ Zone
(www.ericsson.com/developerszone), the WapIDE SDK enables the development
and testing of WAP applications for Ericsson phones.
The SDK simulates the R320s, R380s, and R520m Ericsson phones and
includes an application designer facilitating the creation and testing of WML
applications.Additionally, the inclusion of a push initiator allows push messages to
be sent to the WapIDE browser or real device.
The SDK will run on Microsoft Windows NT 4.0,Windows 98, or Windows
2000 and requires Java 2 Platform, version 1.3.0 or later.
Motorola Mobile ADK
The Motorola Mobile ADK is available to individual developers who register at
the Motorola Applications Global Network (MAGNET). It allows the developer
to create and simulate WML applications targeted towards Motorola devices.You
can find additional information at www.motorola.com/developers/wireless.
Nokia WAP Toolkit
Nokia WAP Toolkit 2.1 includes WML,WMLScript,WBMP, and multi-part edi-

tors plus simulators for various Nokia phones. It also includes debugging tools, a
push simulator, and sample applications.
The SDK is available to registered users and will run on Microsoft Windows
NT 4.0,Windows 98, or Windows 2000 and requires Java 2 Platform, version
1.3.0 or later.A minimum 300MHz Pentium with 128Mb of RAM is recom-
mended.You can find additional information at .
Openwave UP.SDK
The UP.SDK allows applications to be developed targeting devices that utilize
Openwave technologies.The SDK contains an UP.Simulator, UP.Browser phone
www.syngress.com
159_wg_wi_03 10/22/01 4:33 PM Page 130
A New Markup: WML • Chapter 3 131
simulator for Windows and relevant developer documentation, UP.Link notifica-
tion library and tools, plus sample application source code. For additional infor-
mation, visit .
WAPObjects
The WAPObjects framework tightly integrates with Apple’s popular WebObjects
framework. Featuring drag-and-drop integration with WebObjects builder and
support for databases and Enterprise Resource Planning (ERP) systems,
WAPObjects allows rapid application development targeted at wireless users.
Additional information is available at www.wapobjects.com/wapobjects/en.
WML Emulators
WML emulators add the facility to view your WML decks in an emulation of a
phone device.These emulators vary wildly in how they render content and how
closely this compares to actual real-life deployment of a finished application.
Although emulators are useful, there is no substitute for real-world testing using
actual devices over live public networks. For emulators specific to the phone
manufacturers, check the previous WAP SDK listing.

M3Gate (www.m3gate.com/m3gate) M3Gate allows you to surf

WAP sites from the comfort of your PC and is launched when you
encounter a WAP address in your browser. It can be custom-designed
according to your needs for corporate applications.

Virtual WAPJag (www.wapjag.com/news/virtual.php) Link to
the Virtual WAPJag to launch a browser window displaying the WAP
site’s content.

WAPAka (www.wapaka.com) A free WAP microbrowser written in
WAP that can be used within Web browsers or Palm,Windows CE, and
Linux operating systems.

YOSPACE SmartPhone Emulator (www.yospace.com) A well-
known WAP emulator that can be placed on a Web site with a huge
variety of skins and sizes to choose from.

WinWAP PRO (www.wap-shareware.com/directory/
wapemulators/winwappro.shtml) A microbrowser available for a
number of devices.The Palm OS and Windows versions are publicly
available.
www.syngress.com
159_wg_wi_03 10/22/01 4:33 PM Page 131

×