Slide 1: Euglena acus. Slide 2: Diatoms Slide 3: Paramecium caudatum.
Slide 1
-
Upload
sampetruda -
Category
Documents
-
view
667 -
download
1
description
Transcript of Slide 1
04/10/23
Web Browsing on Three Handheld Platforms(Windows Mobile, Symbian, BlackBerry)
Werner Ruotsalainen
04/10/23
About me:
•Currently, the only Windows – Mobile Devices MVP in the country
https://mvp.support.microsoft.com/profile=1ED8A582-EE1A-4769-A72F-A32ADB7B7168
•Lead blogger, Contributing Editor, Software Awards Manager and Tech Editor for market-leading, US-based Smartphone & Pocket PC Magazine
http://www.pocketpcmag.com/
•a.k.a. “Menneisyys” on almost all Windows Mobile, Symbian and BlackBerry user fora
04/10/23
About us (MTA SZTAKI):
IT consulting (not only mobility!), publications, programming (Java (J2EE, J2SE, J2ME etc.), C(++) etc.), lecturing
Web browsing-related activities: TCP/IP protocol conformance testing (HTTP, HTML, Ajax / CSS (ref: 1241), Flash, SMTP, IMAP (ref: 1247), POP3 (ref: 1203 stb.), Push Mail etc.)
(Closed) beta and conformance testing for various software developers (even the biggest names in the industry)
04/10/23
What does “ref” mean?To be as concise as possible, the numbers given as “ref” are the “p” parameters of index.php at http://www.pocketpcmag.com/blogs/index.php•Example: „Ref: 1327“ means you need to build up the full URL as: http://www.pocketpcmag.com/blogs/index.php?p=1327 •Most important three ATM: Windows Mobile Web Browsing Bible: Pocket PC’s (Ref: 1828); Smartphones (ref: 2084); Opera Mini 4.1 (2571)•Web Browsers category on my blog: http://www.pocketpcmag.com/blogs/index.php?blog=3&cat=61
04/10/23
Mobile platforms
•Windows Mobile (WM): Handheld / Pocket PC (PPC) / MS Smartphone•Symbian: (Opera Mobile), Symbian S60 Nokia Web•BlackBerry•Apple iPhone (Safari)•Linux (discontinued: Sharp Zaurus; currently: Nokia Web Tablets; LiMo foundation): Opera Mobile (preinstalled on Zaurii); NetFront•Palm OS (Blazer etc.) – pretty much dead
04/10/23
History of Windows Mobile and browsers - 1
•WindowsCE 1.0 (Handheld PC): early 1997 (HP 300/320LX etc.): really basic (no frames), online (non-offline) browser•WindowsCE 2.0/2.11 (early 1998/1999): two directions:
•Handheld PC (Pro): (HP 360LX/620/680 etc.)•Palm-size PC (Casio Cassiopeia two-digit series (E10 etc.); Philips Nino, HP Jornada 430); offline browsing only
•WindowsCE 3.0 (early 2000): the first really successful MS mobile op. system; the following OS versions are based on it:
•Handheld PC 2000: (HP 720/728 etc.); died out pretty soon; now: niche models only•Palm-size PC’s are renamed to Pocket PC’s and receive an online Web client
04/10/23
History of Windows Mobile and browsers - 2Pocket PC’s: Pocket Internet Explorer (PIE) (renamed to Internet Explorer Mobile (IEM) in WM5+):
•late 2001: PPC2k2 (a step back in speed / memory handling with PIE; ref: http://www.winmobiletech.com/gprs ), •Spring 2003: WM2003 (CSS support added), •Summer 2004: WM2003SE, •Autumn 2005: WM5 (heavily enhanced PIE engine) with several different AKU versions (ref: 1236); for example, AKU3.5 introduced High-Resolution switch•Spring 2007: WM6, no real improvements•Spring 2008: WM6.1, no real improvements either; a fully revised version is promised later this (2008) year•Six PIE plug-in’s / shells (PIEPlus, MultiIE etc.)
04/10/23
History of Windows Mobile and browsers - 3In addition to PIE / IEM, third-party browsers:
•Opera Mobile (early 2006), •NetFront (long-established), •Thuderhawk (long-established; no recent improvements; switching to being MIDlet-based), •Unofficial Mozilla Firefox-port Minimo (mid-2005; development ceased about a year ago); real, official Firefox port promised•Picsel (OEM; slow, incompatible and incapable, albeit a lot of people like it; see ref. 2250)•Maximus (Ref: 1500): really poor•Streaming-based: SkyFire (3G exclusive; US only); DeepFish (discontinued)•MIDlet-based ones (also working on other platforms!):
•Opera Mini (officially: early 2006; now, it’s a serious alternative) •Some other MIDlet-based browsers (TeaShark (Ref: 2186), UCWEB (Ref: 2188)); new Thunderhawk (OEM only)
04/10/23
BlackBerry
•Push mail; traditionally enterprise handheld, the Pearl’s being a consumer non-QWERTY model•Still no switch towards touchsreen models with 9000•Official, current OS: 4.2 / 4.3; new: 4.5•(Unofficial) betas already available: A2DP, new fonts(!), multimedia streaming, new Web browser, HTML e-mail (BES/BIS-side support needed), HE-AACv2, somewhat better Web browser (in-page search, save page, zoom); ref: 2589
04/10/23
Symbian S60•S60 is the surviving Nokia Symbian version, S80/S90 being dead; touchscreen added this or next year•Nokia Web: WebKit-based; minimap; pretty strong and powerful•Flash Lite 2/3 support; 3 delivered in firmware updates (v21 for the N95); much better to play back YouTube / other videos than the full Flash 7 on Windows Mobile
04/10/23
What can a mobile browser be used for? - 1
Architectural restrictions: •(comparatively) small amount of RAM memory (10...90 Mbytes on higher-end handsets; (much) lower on feature phones)•CPU power (624 MHz XScale ~= max. 200-300 MHz Pentium)•Slow (flash ROM vs RAM writing) and/or restricted-size cache•pre-WM7 OS process number restrictions (multitab browsers) on WM•Severe bugs / errors with mobile browsers that aren‘t direct ports of their desktop counterparts, even on the HTTP protocol level, let alone HTML / CSS bugs
04/10/23
What can a mobile browser be used for? - 2
The biggest advantage on all mobile platforms: No need for PDA/handset-only pages; you can access full pages – see the fate and scarcity of WAP. Possible problems:
•>500k HTMLs (for example Snitz Forums 2000 or even YouTube), particularly under PPC2k2 (max. 100-120k HTML without crashing)•Rule of thumb: under PIE / IEM, memory usage is about an order of magnitude more than the original size of HTML. With alternate browsers (particularly with Opera Mini and, to a lesser degree, Opera Mobile) this isn’t an issue•desktop ActiveX: not supported, not even on WM (not an x86 architecture)•Some browsers (PIE, Thunderhawk, Picsel) have very weak JavaScript support•Java applets (login, authentication): custom third-party JVMs only and on WM only (no applet support at all on Symbian / BB); restricted, max. JDK1.4; no official support from Sun. •Flash incompatibility and problems•Less important HTTP/HTML problems, bugs and restrictions
04/10/23
Networking model
•Most online (as opposed to offline; see for example AvantGo, Mobipocket Reader or iSilo offline web downloading) browsers use direct connections; no “dumbing-down” proxies•(Pretty much) transparent proxies: Opera Mini (and all the other MIDlet-based browsers), Thunderhawk
•Cons of proxies: possible eavesdropping; not flexible enough (no way to use other proxies like Toonel)•Pros: much less overhead; anonymity (real IP hidden)
04/10/23
WM Browsers:Pocket Internet Explorer (PIE) / Internet Explorer Mobile (IEM)
(Name changes: Ref: 1276)
•Built-in •Weak / non-existing Ajax/JavaScript support•Poor CSS support; •No multidocument (multitab) support without 3rd party plug-ins•No link target / current page saving; WM5+: image saving supported•restrictions: IFrame in pre-WM6 browsers; max. 10 frames•Frequent crashing because of certain CSS constructs under pre-WM5 (ref: 387, 1241); no longer the case in WM5+
04/10/23
WM Browsers / PIE/IEM - 2
•“Pixel doubling” problem on hi-res (W)VGA devices; a major one when used as a plug-in in external apps like CHM readers (ref: 428; see section “Cons”). (Partially) fixed in WM5 AKU 3.5.•Being used as plug-ins: “fox jumps over a lazy dog”
bold / italic HTML closing tags should be used right after the (last) word: <i>foo</i> bar; not in the following way: <i>foo </i>bar
04/10/23
WM Browsers / NetFront (NF)
•$30; built-in Flash (weaker than that of Adobe / Macromedia; has CPU usage problems), SVG (Japan!) and Java VM; multitab (max. 5 – as opposed to IEM plug-ins or the Operas); minimap; iPhone-like acceleration & dragging•Pretty good Ajax/ JavaScript/ CSS; acceptable Java; rendering is better than that of IEM•Consumer releases: 3.3 (2006; inferior); 3.4 (2007): OEM only; currently: 3.5 Technical Previews
04/10/23
WM Browsers / Minimo (MINI MOzilla)
•Free; cancelled; unofficial Firefox port (official will come later)•Two versions: 0.16 (for pre-WM5 devices) and 0.20 (for WM5+ only)•Plain useless on some models (speed problems); bugs•Excellent scripting (incl. Ajax) and CSS support •(ref: 1302)
04/10/23
WM Browsers / Opera Mobile
•One of the best browsers:
•Excellent JS / Ajax support •Almost 100% compatibility, particularly with version 9.33•Very fast•Flash plug-in support•Any number of tabs can be open, as opposed to NetFront or IEM w/o a plug-in
•Currently, two versions: official (8.65) and preview (9.33 / 9.5), both PPC’s and Smartphones. 9.xx-series has even better standards compliance
04/10/23
Opera Mini (Ref: 2571)•MIDlet (ref: MIDlet Bible; 2266)-based; compatible with almost every phone out there•As of version 4.1beta, offers even file upload, address autocompletion and page saving; full page view also supported (added in 4.0), not only one-column•Only problem: lack of copy/paste from pages (could easily be fixed as is done in Russian Opera Mod – feeding the textual page contents to a text input area)•Proxy-based solution: far less data usage; however, it can’t access local files and the additional processing can take some time•Direct invocation: Ref: 2334
04/10/23
WM Browsers / Thuderhawk
•Advantage: uses its own fontset, which makes rendering possible even on 320-wide screens. HOWEVER: it only supports Western characters; meaning no support for Eastern European languages. The latter can be somewhat fixed by converting the special, Unicode-only characters used by them to 8859-1 on the server side; ref: 1327
•PIE can use similar fonts to look pretty much the same condensed (Ref: http://forum.xda-developers.com/showthread.php?t=250789 )
•No support for hi-res ((W)VGA) screens; no saving at all (ref: 1302), not even copy from pages. Doesn‘t use client-side caching at all; it is only able to download to built-in storage; no upload etc.
•Pretty much discontinued; BitStream now is concentrating on a MIDlet-based new version (OEM-only ATM); ref: 2485
04/10/23
WM Browsers: Microsoft Deepfish
•Cancelled; might be reused later•CF-based; VERY slow, streaming
04/10/23
WM: PIE plug-ins
They greatly extend PIE‘s capabilities (multitab, resource saving, User-Agent GUI-based setting, hardware buttons used for navigation / program usage, GPS-based, location-dependent services, address bar macros, altering the way the document is scrolled by D-pad etc.)•PIEPlus: probably the best and most featureful (saving, tabs, buttons etc.; unique feature: Pocket View one-column view for pre-WM2003SE browsers – n.b. “One Column” was only introduced in WM2003SE)•MultiIE: used to be better than PIEPlus; however, this doesn’t seem to be the case any more
04/10/23
PIE plug-ins - 2•ftxPBrowser (Ref: 551): free; in pre-WM5 times, used to be highly recommended.
• Mostly incompatible with WM5+!
•Webby (Ref: 1334, 1828): .NET Compact Framework-based and is, therefore, a bit on the slow side. However, it’s become better and better over time and offers for example extensions like Mozilla for for example ad filtering. No One Column mode. Brand-new Touch Browser (ref: 2593) is pretty similar in its functionality (or, currently, the lack thereof).
•Spb Pocket Plus 4 (Ref: 2250): while in pre-4 times it was definitely worse (it didn’t even offer on-screen, easily clickable tabs) than PIEPlus or MultiIE, this is no longer the case: version 4.0 has fixed this, along with other goodies like accelerated screen dragging.
04/10/23
OS-level problems (WM)
Operating system-level, runtime problems not fixable on the code level, unlike, say, pre-WM5 PIE CSS crashes•Driver memory usage: NetFront and Opera Mobile used to be problematic, particularly under WM2003SE (Ref: 882)
04/10/23
Optimizing for PDA / phone 1: small-screen rendering / PIE - 1Low screen resolution results in having to scroll horizontally: “One column” for the rescue. Supported by all browsers except Thunderhawk PIE received One column in WM2003SE; previously, only the weaker “Fit to screen” was accessible (this remained as “Default”), in addition to “Desktop view”. Example (Desktop / Fit to Screen (Default) / One Column):
04/10/23
Optimizing for PDA / phone 1: small-screen rendering / PIE - 2
Therefore: in WM2003SE PIE’s (where there’s no One Column and “Fit to Screen” (Default) often isn’t sufficient,•External Web compression / reformatting / one-columnizing services should be used (Skweezer etc.; Ref: 494). They get rid most of JavaScript.•PIEPlus (explicit Pocket View mode)•Use an alternate browser like Opera Mobile (WM2003) or Thunderhawk (compatible with even PPC2k / 2k2)
04/10/23
Optimizing for PDA / phone 1: small-screen rendering / Opera MobileThree modes – as with IEM. N.b. One Column is buggy: the horizontal size is 240 pixels; that is, it’s only really usable on QVGA devices used in Portrait – preferably not in Landscape and definitely not on a (W)VGA hi-res model.
04/10/23
Optimizing for PDA / phone 1: small-screen rendering / NetFront
NetFront: Three similar modes: Normal, Just-Fit (about the same as “Fit to Screen” / “Default” in IEM), Smart-Fit. The latter is the best: it’s like One Column, but still tries to render contents horizontally where applicable, unlike IEM
04/10/23
Optimizing for PDA / phone 1: small-screen rendering / Minimo (SSR)
04/10/23
Optimizing for PDA / phone 1: small-screen rendering / Thunderhawk
04/10/23
Optimizing for PDA / phone 1: D-pad / jog dial-based scrolling (Ref: 547)
•IEM, by default, uses link scrolling (as opposed to page); can be altered on the Registry level; most IEM plug-ins allow for doing this on the GUI level
•Some browsers / plug-ins even allow for supplying the scroll amount in percents (see pic)
•Jog dial / volume controller with SmartSKey (one-handed mode): most of the browsers support it
04/10/23
Additional Web technologies 1: Applets
•PIE: Only two JVM’s have applet support (JVM’s with no Applet support are IBM J9 (MIDlet / Personal Java; ref: 787); Mysaifu (ref.: 653)):
•Insignia Jeode (out of business); last version dates back to 2003 (iPAQ 5550)•CrEme (not for non-OEM customers; 30-day trial): the best
•Built-in JVM in standalone browsers:•NetFront 3.1+: acceptable (worse than Jeode / Creme)•Thunderhawk: server-side running and image transfer; cons: low-res and slow-to-refresh images; pros: full JDK 1.5+ compatibility.
•No applet support in Opera Mini/Mobile or Minimo•Absolutely no applet support under BB / Symbian
04/10/23
Additional Web technologies 2: Flash
•IEM and Opera Mobile : somewhat restricted (Ref: 969); uses Adobe’s own Flash 7 plug-in•NetFront (buggy (CPU usage bugs; Ref: 889); weaker)•No Flash: Minimo, Opera Mini, Thunderhawk•(Several standalone, offline players!)•Absolutely no full Flash support under BB / Symbian. The latter, however, supports Flash Lite 3 – unlike WM. (See next slides)
04/10/23
Additional Web technologies 3: Flash Lite 3•Not available for Windows Mobile / BB as yet; for WM, it’s coming•Has recently been released for Symbian S60
04/10/23
YouTube and other Web videos – 1 (Ref: 2599)•HTTP / H.264 & FLV vs. RTSP / 3GP: quality, being firewall-friendly; client coming with iPhone•Desktop YouTube Web isn’t the best for mobile usage (slow, huge pages; only Symbian + Flash Lite 3 is able to play back inline videos); the mobile version:
•Already supports all the functionalities of the desktop (account, upload etc)•Is compatible with most mobile platforms having an RTSP / 3GP player like RealOne – no additional player needs to be installed•Already has all the videos, unlike a year ago•HOWEVER – it’s lower-quality 3GP only (no FLV) and requires RTSP
04/10/23
YouTube and other Web videos – 2
•If you need / must use FLV / H.264 and not on Symbian (where Flash Lite 3 works just great), use an external app or service; for example, vTap...
04/10/23
YouTube and other Web videos – 3…or YTPocket (with TCPMP as the player):
04/10/23
Reducing data usage - 1 (Content-Encoding: gzip)Problem: data connections can be expensive unless you have a flat rate. Pre-3G connections (GPRS, EDGE stb) are slow, too. All WM browsers (starting with PPC2k PIE too) support gzip / deflate HTTP response body compression (Accept-Encoding header!)
Server-side optimization
•Several forum engines (e.g., vBulletin) support GZIP’ing if it identifies the client as a mobile device. See header list: Ref: 796
You still need to find out whether a mobile user is accessing?
•Several users use User-Agent spoofing: check for UA IEM headers to find out whether it’s a real desktop browser or IEM with spoofed User-Agent. Ref: 1125
04/10/23
Reducing data usage - 2: client-side optimizingIf the server doesn’t return compressed content, you can still reduce data usage:
•Toonel (Ref: 1002): runs on Pocket PC; free; also supports SMTP/POP3•OnSpeed (Ref: 494):•Skweezer, MobileLeap, Google Mobile etc. (Ref: links at 494) online Web services – proxy-based compression; problems: HTTPS; in general, it entirely removes JavaScript; no HTML charts / tables
MultiIE, PIEPlus and Webby automatically supports the online services; the first two (Toonel / OnSpeed) can be used with all Windows Mobile Web browsers allowing for proxy usage (that is, everything except Opera Mini and TH – not a problem though as they’re content-stripped / compressed already)
04/10/23
Compatibility: JavaScript, Ajax (ref: 1241)•Best support: Opera Mobile and Minimo. Minimo /OpMob Ajax tests: see pics.•IEM pretty weak, even as of 6.1•NetFront as of 3.3: poor; 3.4+: much better; Thunderhawk: poor•Bad JS support in IEM: Yahoo Mail buttons don’t work (ref: 318)
04/10/23
Compatibility - 2: CSS (ref: 1241)
Acid 2 test; pics: Desktop Opera (best), on PPC the two best are Opera Mobile (here, 8.60, 9.x is flawless) and Minimo
04/10/23
Compatibility -2: CSS -2•NetFront: far from perfect•IEM: CSS support only starting with WM2003; pre-WM5: frequent CSS incompatibility crashes
04/10/23
Compatibility – 3: W3C’s “Web Compatibility Test for Mobile Browsers” – 1 – Windows Mobile - 1IEM (in WM6.1): pretty bad; is only a bit better than in 5-year-old WM2003 and 7-year-old PPC2002 (Ref: 2589)
04/10/23
Compatibility – 3: W3C’s “Web Compatibility Test for Mobile Browsers” – 2 - – Windows Mobile - 2Opera Mobile 9.33 (1st): almost flawless; indeed based on the new, 9.x-series kernel – as opposed to 8.65 (2nd pic).Opera Mini 4.1 (3rd): acceptable results
04/10/23
Compatibility – 3: W3C’s “Web Compatibility Test for Mobile Browsers” – 3 – Windows Mobile - 3NetFront 3.5 TP (1st); WebKit-based Iris browser (2nd); Minimo 0.20 (3rd)
04/10/23
Compatibility – 3: W3C’s “Web Compatibility Test for Mobile Browsers” – 4: BlackBerry, S60, iPhone SafariWebKit-based Symbian S60 FP1 (1st), iPhone Safari (2nd), BlackBerry 4.2 (3rd), 4.5 (topmost)
04/10/23
Compatibility – 3: W3C’s “Web Compatibility Test for Mobile Browsers” – 5 – Desktop browsersBottom: Firefox 3 beta5; Internet Explorer 8 beta; IE7; top: Opera 9.5
04/10/23
Avoiding future problems with Windows Mobile browsers 1: the problem of (Inline) Frames - 1•PIE: the number of (standard, not i-) frames is restricted (10/12 at most for pre-WM6/WM6+, respectively). One of the most widely known example of the affected pages is freemail.hu (pics: PIE, Opera Mobile)
04/10/23
Avoiding future problems with Windows Mobile browsers 1: the problem of (Inline) Frames - 2
•Inline Frames (IFrame) are in no way supported by pre-WM6 PIE and TH. •Therefore, no Gmail / Yahoo Mail dynamic address completion is possible (which works in Opera Mobile and Minimo)
04/10/23
WM6 Iframe and standard frame demo(see “Iframe support” row in 1828 Chart)
04/10/23
Avoiding future problems with Windows Mobile
browsers 2: Cookie-related problems
•NetFront: a known problem for years: doesn’t take DST into account: if DST is not used (it’s not summertime) and the NF client is given a cookie expiring in less than an hour, it’ll be discarded at once
•Used to be a huge problem with the index.hu forum (not any more)•Ref: http://www.pocketpcthoughts.com/forums/viewtopic.php?p=351433
•TH temporary cookie bug requiring the manual copying of cookies; see the 2005 version of Browser Bible for a client-side, manual fix.
04/10/23
Avoiding future problems with Windows Mobile browsers 3: Language & encoding problems (Ref: 1327), internationalization
•Content-Type charset attribute: HTTP header vs. meta tag•NetFront is entirely different from the rest – and is buggy when 8859-1 is used along with special 8859-1 punctuation.
•Opera Mobile is pretty problematic at POSTing special contents (special 8859-1 punctuation and everything different from 8859-1). Consequently: •Never ever return special punctuation chars from the server
for example, convert them back to the basic, non-formatted chars: upon recognizing these two browsers, dynamically convert the chars on the server for NF and (for editing; see below) Opera Mobile
•If an Opera Mobile client edits a non-8859-1 document (like an article or a forum post), convert all special Unicode characters (like ő and ű) to HTML char entity codes (ő and ű with ő and ű, respectively). These entity codes are correctly POSTed back by the browser
04/10/23
Avoiding future problems with Windows Mobile browsers 3: Language & encoding problems - 2
Thunderhawk: 8859-1 should always be used whenever possible – that is, when the source language can easily be mapped to 8859-1 (User-Agent check)
04/10/23
Internationalization - Accept-Language (Ref: 1172)Accept-Language request header: user-preferred language•Can only be set in PIE and Minimo; all the other, non-proxy-based solutions (everything except TH, Opera Mini) need a header-altering proxy server
04/10/23
Avoiding future problems with Windows Mobile browsers 4: File download (ref: 1302, 2590)•Content-Type: text/plain response problems with binary content: IEM & NF don’t try to decide whether the body is binary and blindly render it – as opposed to IE on the desktop. No such problems with other Windows Mobile browsers. That is, make sure Content-Type: is correctly set on the server to allow for binary downloading to IEM & NF!•NF & Opera Mobile: They send out download requests twice (vs. desktop) – this is why for example RapidShare doesn’t work
never reject double download requests!•Referer-related problems: before WM5, PIE (and Thunderhawk even now) don’t pass the Referer header
don’t trust the Referer header always being sent in order to deny out-site download requests
•Acceleration: multithreaded download (see FlashGet on desktop); two multithreaded apps:
•Just-released Adisasta WinMobile Download Accelerator 2.0 (do NOT use older versions because they’re slow!)•HandyGet 1.6
04/10/23
File upload (Ref: 1116)•All browsers (except for TH) support it; IEM starting with WM5•Therefore, don’t depend on the users’ ability to upload files: either
•tell them to use an alternate Web browser (for example, Opera Mini 4.1+) or•provide FTP upload support (Ref: 508) or, with text input, a HTML textarea to paste to
04/10/23
Thanks!
Any questions?