1. Trang chủ
  2. » Công Nghệ Thông Tin

Webmaster''''s Guide to the Wireless Internet part 21 pptx

10 179 0
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 10
Dung lượng 321,98 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

For instance, when you load the application for the first time at 7:30 A.M., the WMLScript should expire in 30 minutes.To check that, the UP.Simulator provides an option for you to displ

Trang 1

The second problem is trickier.You want to know whether you have set the expiration date of the WMLScript correctly For instance, when you load the application for the first time at 7:30 A.M., the WMLScript should expire in 30 minutes.To check that, the UP.Simulator provides an option for you to display the cache information of the browser.To display the cache information, press the

F6 function key or click on Info->Cache (this can be seen in Figure 4.23).The

cache information would then be displayed in the Phone Information window displayed in Figure 4.24

Notice that the Calculate.asp document (generating the WMLScript file) has

a Time-To-Live (TTL) of 30 minutes.This indicates that the WMLScript will expire in 30 minutes (since loading time is 7:30 A.M.)

DumpCacheEntries By Request

Flags: R=Must-Revalidate I=InUse O=OutOfDate C=InChannel

Figure 4.23The UP.Simulator Allows Cache Information to Be Examined

Figure 4.24Viewing the Cache Information in the Phone Information Window

Trang 2

URLM DOCM FLAG T PR TTL URLS 01588/2 01600/2 S 1 30m HTTP://LOCALHOST/Calculate.asp 01564/9 01572/3 W 1 29d HTTP://LOCALHOST/currency.wml Once the application is loaded, the WMLScript in the cache would be used if the application is accessed anytime from 7:30 A.M to 8:00 A.M.This is reflected in the Phone Information when the application is run again:

cache hit: <HTTP://LOCALHOST/Calculate.asp>

When the same application is accessed after 8:00 A.M., the WMLScript would then have expired, and a reload is necessary.To be certain that the WMLScript is reloaded, check the Phone Information window to see that the WMLScript is recompiled:

HTTP GET Request: HTTP://LOCALHOST/Calculate.asp

- DATA SIZE -Uncompiled data from HTTP is 860 bytes.

found Content-Type: text/vnd.wap.wmlscript.

[xlateWMLScript] [unknown subscriber] Compiling WMLScript[xlateWMLScript] WMLScr

ipt was successfulCompiled WAP binary is 278 bytes.

-During the debugging stage you might be tempted to forward your system clock to see the expiration effect of the WMLScript However, this does not work For example, if you load the application at 7:45 A.M., the TTL of the WMLScript file would be 15 minutes If you now adjust your time to 8:00 A.M., the WMLScript would still be loaded from cache.This is because the expiration

of the WMLScript works based on the “count-down” effect.The correct way to

do this is to set the clock to 7:58 A.M and load the application After that, wait for about five minutes before loading the application again.This time round, the WMLScript would expire!

Lessons Learned

What was originally thought of as a simple project turns out to be quite an

Trang 3

Caching Problems

We have tested the application on three emulators:

■ UP.Simulator 4.0

■ Nokia WAP Toolkit version 1.3 beta and 2.0

■ Ericsson WapIDE 2.1 The Nokia WAP Toolkit 2.0 and the UP.Simulator have no problem with caching However, the Ericsson WapIDE performs caching regardless of setting the HTTP header to expire the cache at a certain time.The Ericsson emulator will work correctly only if the cache is disabled.This results in the ASP docu-ment being executed every time the application is loaded, which causes a signifi-cant increase in load time, both on the client and server sides

Debugging the Emulators

Recall that we have this line in the last part of our WMLScript:

amount *= 1.0;

This seemingly redundant line resolves a bug in the UP.Simulator’s

imple-mentation of the format() function in the String library.

String.format("%.2f",amount)

The problem with this function is that if the amount is an integer, it will not

format the string correctly.When used together with the alert() function from

the Dialogs library, the screen simply remains unchanged even when the user

presses the Calculate soft key.

This problem was irritating, as it was hard to pinpoint at the beginning of the project.The other emulators like Nokia WAP Toolkit and the Ericsson WapIDE

do not have problems with this issue

Emulators Are Relatively Unstable!

When it comes to running WMLScripts, emulators are still pretty unstable.We spent a good portion of our time trying to run the application on the different emulators Sometimes it worked, sometimes it didn’t So far, the UP.Simulator has been pretty stable, except for the bug noted previously

Trang 4

In this chapter, we have taken a quick look at how WAP applications can make use of WMLScript to perform client-side tasks such as input validation.We have demonstrated the various features of the language by examining several examples

The syntax of WMLScript is similar to that of JavaScript In this chapter we have seen the various language features like data types, looping constructs, key-words, and operators Since not all WAP browsers support WMLScript, special care must be taken to ensure that the target device is able to execute the WMLScript program before sending them one

The WMLScript language itself comes with a set of libraries providing most

of the commonly used functions to help the developers However, note that some vendors may provide additional libraries that will work only on their particular platform

To get you started on WMLScript, we have demonstrated four scenarios in which we can make use of WMLScript.These examples illustrated the various language features such as linking a WML deck with a WMLScript program, looping, improvisation of arrays using strings, and so on And finally, we put together a WAP application using WML,WMLScript, and Microsoft ASP to illustrate a practical use of WMLScript

Solutions Fast Track

What Is WMLScript?

 WMLScript is loosely based on the ECMAScript (ECMA262)

 Most devices in the market support WMLScript

 WMLScript programs are compiled into bytecode by WAP gateways

 WMLScript is activated by WML decks

Understanding Basic Elements of WMLScript

 WMLScript contains libraries

 Within each library are functions that provide most commonly needed

Trang 5

Learning to Interpret WMLScript

 WMLScript functions that are preceded by the extern keyword are

callable by WML decks

Performing Mathematical

Operations Using WMLScript

 Variables are declared in WMLScript using the var keyword.

 WMLScript handles data type internally

 WMLScript supports looping using the for construct

Using WMLScript for Input Validation

 The compare() function in the String library compares two strings.

Credit Card Validation

 WMLScript does not support arrays

 Use a string to improvise an array if needed

Using WMLScript and Microsoft ASP: A Case Study

 A server-side technology like ASP can be used to generate dynamic WMLScript programs

 WMLScript programs are cached on the client-side

 Use the HTTP directives to control caching behavior on the client-side

Trang 6

Q:Why is it that on certain emulators my WMLScript program would fail to execute?

A:Some emulators do not execute WMLScript properly A good idea is to try out different emulators during the development phase

Q:Why is input validation important for mobile devices?

A:Input validation is especially important for mobile application because the connection to the back-end server is inherently slow Input validation reduces the round-trip delay caused by server-side validation since the validation is done on the client-side

Q:What are the similarities and differences between WMLS and JS as it applies

in this realm?

A:WMLScript and JavaScript both perform client-side operations However, unlike JavaScript,WMLScript programs are compiled before they are sent to the client side Also,WMLScript programs are saved in separate files, unlike JavaScript, which has the option to embed within the HTML document

Q:What kind of setup is required of me if I want to run the ASP example?

A:You need to have a Web server (Microsoft Personal Web Server or Internet Information Server will do) If you are not using Microsoft Windows Operating System, you may need additional setup for your Web server (e.g., Apache, etc.)

Q:Where can I learn more about the WMLScript language? What is the latest version of WMLScript?

Frequently Asked Questions

The following Frequently Asked Questions, answered by the authors of this book, are designed to both measure your understanding of the concepts presented in this chapter and to assist you with real-life implementation of these concepts To have your questions about this chapter answered by the author, browse to

www.syngress.com/solutions and click on the “Ask the Author” form.

Trang 8

Wireless Development Kits

Solutions in this chapter:

The Openwave UP.SDK 4.1

The Nokia WAP Toolkit 2.1

The Motorola Mobile Application Development Kit 2.0

The Ericsson Mobile Internet WapIDE 3.1

The Yospace SmartPhone Emulator 2.0

 Summary

 Solutions Fast Track

 Frequently Asked Questions

Chapter 5

Trang 9

When you start developing Wireless Application Protocol (WAP) applications, you will probably find that continuously testing your application using your WAP-enabled mobile phone is both difficult and expensive.The good news is that emulators and software development kits (SDKs) are available to help you during the design, development, and testing phases of creating your mobile appli-cation.These tools not only make testing the application easier than using your mobile phone, but they also provide more detailed feedback, including informa-tion such as line numbers where the errors occurred and the size of the compiled Wireless Markup Language (WML) deck

Each SDK has different features, advantages, and disadvantages Developers also have quite a variation in their preferences.The information in this chapter should help you choose an SDK that is best suited to your needs and work style

We look at the following SDKs in this chapter:

■ The Openwave UP.SDK 4.1

■ The Nokia WAP Toolkit 2.1

■ The Motorola Mobile Application Development Kit 2.0

■ The Ericsson WAP-Integrated Development Environment 3.1

■ The Yospace SmartPhone Emulator 2.0

We go step-by-step through the process of downloading, installing, and using each SDK with simple examples.This chapter should give you a good feel for each one and help you decide which one you would like to use during your development process

The Openwave UP.SDK 4.1

A large percentage of mobile phones sold in the United States use Openwave System’s WAP browser Openwave provides an SDK to help you develop applica-tions and test them on the UP.Browser.The software is available free of charge, and you can use it to test applications on your local file system or on remote

servers.The UP.SDK can, through the use of skins, emulate a variety of mobile

phones on the market to make testing your application on multiple devices easier.The UP.SDK includes a variety of tools and documentation, including the following:

Trang 10

■ The UP.Simulator for WML

■ Libraries for Common Gateway Interface (CGI) programs that make generating WML easier (Perl and C)

■ C++ (Solaris) and COM (Windows) notification, digest, and fax libraries and tools

■ Tools for requesting and installing SSL certificates

■ Sample WML and WMLScript files

■ Developer documentation in Hypertext Markup Language (HTML) format

You can use the Openwave UP.SDK to simulate phones that use the

UP.Browser version 4.x.You can develop WAP applications and applications that

use the Openwave extensions to WML using the UP.SDK.The sample applica-tion we develop does not use these extensions.You will need a separate program for editing your WML and WMLScript files because an editor is not included in the UP.SDK

Installing Openwave UP.SDK

The UP.SDK is written for the Win32 platform—this includes Windows 9x,

Windows NT, and Windows 2000.We look at the specific requirements for your system, how to obtain the software, and how to install it on your computer

System Requirements for the Openwave UP.SDK

Openwave gives the following requirements for running the UP.SDK:

■ To run the UP.Simulator, you need a computer with an Intel (or com-patible) processor running Windows 95,Windows 98, or Windows NT 4.0 (Service Pack 5)

■ To test WML services available on the Internet (such as the example ser-vices provided by Openwave), your computer must have an Internet connection

■ To test your own WML services, you need a Hypertext Transfer Protocol (HTTP)-compliant Web server

Ngày đăng: 04/07/2014, 02:20

TỪ KHÓA LIÊN QUAN