XHTML v mobilních telefonech

16. března 2004

Novější mobilní telefony používají WAP verze 2.0 a značkovací jazyk XHTML. Přináší to více možností při formátování stránek pro wapové prohlížeče – můžeme nejen pracovat s kaskádovými styly, ale také vytvářet seznamy a třeba připravit formulář s tlačítkem. Komfortní editaci pak poskytuje například Nokia Mobile Toolkit.

V souvislosti s mobilními telefony a potřebnými technologiemi přichází ke slovu také značkovacím jazyk XHTML-MP (Mobile Profile). Tento odchovanec XML umožňuje, ve srovnání s klasickým WML jazykem pro přípravu wapových stránek, upravovat obsah pro mobilní telefony s většími možnostmi. Někteří odpůrci miniaturních displejů možná budou oponovat, že to nemá příliš smysl, když nová verze WAP 2.0 a XHTML „chodí“ zatím jen v prohlížečích některých mobilů. To je pravda, protože mobily od různých výrobců se opravdu liší a i když byly nové vlastnosti přece jen v některých modelech implementovány, nemusí vždy fungovat. Přesto však vývoj spěje k XHTML pro jeho nepopíratelné výhody, z nichž některé jsou předmětem článku.

Co je třeba dodržet?

Než se dostanu na některé „lahůdky“ verze WAP 2.0, která pracuje se zdrojovým kódem XHTML-MP, pokládám za nutné znovu zdůraznit, že XHTML podporuje zpětně zobrazování stránek klasických WML. Takže není třeba se obávat, že je novější mobily nepřijmou. Na poslední článek o WAPu jsem také dostal několik rozzlobených e-mailů s připomínkami, že wapové stránky (u nichž byl použit zdrojový kód XHTML) se na webovém serveru nezobrazují. Problém je v tom, že provoz stránek XHTML na webovém serveru nestačí nakonfigurovat pouze pro WML! Například soubory s dynamickými stránkami v PHP používají příponu .php, která však (na rozdíl od .htm a dalších) nic neříká o obsahu souboru. Proto je nutné použít definici MIME-Type, nebo také Content-Type. Navíc konkrétní typ souboru (například obrázek) nemusí být vůbec definován, takže není jasné, co se s ním má udělat. Doporučuji proto autorům, aby sami definovali asociace MIME-type pro stránky psané v XHTML. Například ve Windows XP to provedeme takto:

  1. Z menu „Start“ aktivujte | Ovládací panely | Nástroje pro správu | Internetová informační služba |.
  2. Objeví se okno „Internetová informační služba“, v němž klikněte v levém sloupci pravým tlačítkem myši na složku „Webové servery“.
  3. V dalším okně „Webové servery – vlastnosti“ klikněte na záložku „Hlavička HTTP“.
  4. Poté v oddíle „Mapování MIME“ aktivujte tlačítko „Typy souborů“ a zde můžete pomocí tlačítka „Nový typ“ přidat nový typ souboru MIME.

Ukázka nastavení obsahu MIME

WAP 2.0

Nejprve malé shrnutí. Technologie Wirless Application Protokol (WAP), kterou máme zavedenou v mobilním telefonu, nám umožňuje číst internetové stránky, odesílat e-maily, obchodovat, objednávat si v knihovně publikace a mnoho dalšího. WAP protokol je otevřený globální standard pro komunikaci mezi mobilním přístrojem a internetem, nebo jinou počítačovou aplikací. Využívá značkovací jazyk Wireless Markup Language (WML), křížence HTML a XML. První specifikace WAP vyšla v roce 1998 (Organizace WAP fórum). Od července 2000 platí verze WAP 1.3.

Počátkem roku 2001 byla zveřejněna verze WAP 2.0, která už využívá plně jazyk XHTML. Ten je flexibilnější než WML, přináší programátorovi větší možnosti, z nichž těží i koncový uživatel. Stejně jako v případě WML lze dokumenty psané v XHTML napojit na skriptovací jazyky (PHP, ASP a další) a například generovat stránky přímo z databáze. Specifikace WAP 2.0 není ještě plně rozšířena. Podporují ji pouze novější mobilní telefony. Opět zdůrazňuji, že každý wapový prohlížeč, který umí zobrazovat XHTML, zobrazí i stránky psané v kódu WML. Podívejte se na následující tabulku, která ukazuje využití browserů WAP. (Uvádím pouze ty mobilní telefony, o nichž jsem měl možnost získat informace, nebo které jsem testoval.)

Značka Prohlížeč – technologie Přenos dat
Samsung T 100 WAP 1.2.1 CSD
Samsung SGH-E700 WAP 1.2.1 GPRS
Alcatel OT 535 WAP 1.2.1 GPRS
Sony Ericsson P 800 WAP 1.2.1 GPRS
Sony Ericsson Z600 WAP 1.2.1 GPRS
Siemens M-55 WAP 1.2.1 GPRS
Nokia 3510i WAP 1.2.1 CSD, HSCSD, GRPS
Nokia 7700 WAP 2.0/XHTML CSD, HSCSD, GRPS
Nokia 6600 WAP 2.0/XHTML – Java™ MIDP 2.0/XHTML CSD, HSCSD, GRPS
Nokia 6230 WAP 1.2.1, WAP 2.0 – Java™ MIDP/XHTML CSD, HSCSD, GRPS, EGPRS
Nokia 3650 WAP 1.2.1/XHTML – Java™ MIDP HSCSD, GRPS
Nokia N-Gage WAP 1.2.1/XHTML – Java™ MIDP/C++ HSCSD a GPRS (2+2, 3+1)

Kde získat informace o WAPu, včetně nejnovější verze? Podrobná dokumentace je k dispozici na www stránkách WAP forum.com, nebo také na www stránkách otevřeného mobilního spolku Open mobile aliance (OMA). Tam získáte zdarma popis specifikace. Podmínkou je pouze přihlášení se do centra, a to vyplněním stručného formuláře, načež obdržíte e-mailem sdělení o přístupovém právu.

Více typů seznamů

Na rozdíl od značkovacího jazyka WML dokáže jazyk XHTML-MP zobrazovat v browserech mobilních telefonů různé typy seznamů. Stejně jako v HTML lze použít elementů <ol>, <ul>, <li>. Zde je ukázka jednoduchého číslovaného seznamu:

<?xml version=“1.0″? encoding=“utf-8″?>
<!DOCTYPE html PUBLIC „-//NOKIA//DTD XHTML Mobile +CHTML 1.0//EN“ „http://www.nokia.com/dtd/xhtml-mp-chtml.dtd“>
<html xmlns=“http://www.w3.org/1999/xhtml“>
<head>
<title>Cislovany seznam</title>
</head>
<body id=“main“>
<p>
Ukázka nečíslovaného seznamu:
<ol>
<li>Prvni radek</li>
<li>Druhy radek</li>
<li>Treti radek</li>
</ol>
Ukázka číslovaného seznamu:
<ul>
<li>Prvni radek</li>
<li>Druhy radek</li>
<li>Treti radek</li>
</ul>
</p>
</body>
</html>

Jelikož XHTML vychází z jazyka XML, který používá primárně kódování UTF-8, je použito také v prvním řádku. Musím však poznamenat, že mobilní telefony a brány některých operátorů toto kódování odmítají. Můžeme sice použít také jiná kódování, například Windows-1250 nebo ISO-8859-2 (pro češtinu), bohužel i v tak jde o nejisté řešení. Ne všichni naši operátoři tato kódování akceptují, navíc je nepodporuje organizace WAP fórum. Prozatím se zdá nejjistější psát bez „hacku a carek“. Nebo sice s diakritikou psát, ale písmena nad rozsah ASCII převádět na vyjádření entitami.

Ukázka číslovaného seznamu

Více možností ve formuláři

Značkovací jazyk XHTML nám rovněž poskytuje v porovnání s WML větší možnosti při tvorbě formulářů. Pro odeslání obsahu formuláře můžeme oproti WML použít navíc i tlačítko. K jeho zobrazení tu slouží blokový nepárový element input, který se běžně používá pro zobrazení textového pole. V tomto případě je u elementu navíc hodnota submit, sloužící pro odeslání dat:

<?xml version=“1.0″?>
<DOCTYPE html PUBLIC „-//WAPFORUM//DTD XHTML Mobile 1.0//EN“
„http://www.wapforum.org/DTD/xhtml-mobile10.dtd“>
<html xmlns=“http://www.w3.org/1999/xhtml“>
<head>
<title>Formular s tlacitkem</title>
</head>
<body id=“main“>
<p>
<form method=“get“ action=“stranka.xhtml“>
Jmeno: <input type=“text“ name=“jmeno“/><br/>
Heslo: <input type=“password“ name=“heslo“/><br/>
<input type=“submit“ value=“Odeslat“/>
</form>
</p>
</body>
</html>

Ukázka formuláře s tlačítkem

Testování stránek

Autoři webových stránek to mají celkem jednoduché, stačí, když si otestují výsledek své práce na počítači pomocí internetového prohlížeče. Tvůrci stránek pro mobilní telefony potřebují navíc k testování své práce simulátory. Tyto nástroje dokáží poměrně věrohodně simulovat, jak se bude skutečná wapová stránka chovat na mobilním telefonu. V současnosti lze z internetu získat originální simulátory například společností Nokia, Ericsson a Motorola. Je dobré mít v počítači alespoň dva kontrolní prohlížeče, v nichž bychom měli své stránky testovat.

K nejznámějším vývojovým nástrojům patří Nokia Mobile Internet Toolkit (NMIT), momentálně dodávaný už ve čtvrté verzi. Uživatel v něm může pracovat jak s editorem zdrojového kódu, tak i se simulátorem Nokia Mobile Browser. Ten vývojáři ukáže, jak bude vypadat editovaná stránka na skutečném mobilním telefonu s WAP prohlížečem. K dispozici jsou příklady zdrojových kódů stránek (WML, XHTML-MP) a také předpřipravené šablony.

NMIT - editor zdrojového kódu

Nokia Mobile Internet Toolkit je vlastně celý soubor editorů a simulátorů. Můžete se rozhodnout pro simulaci stránky od nejjednodušších mobilních telefonů s podporou WAP Nokia řady 6200 a řady 7100 (pro WML 1.1 a 1.2) až k nejnovějším typům, jejichž browser pracuje s WAP 2.0 a XHTML. Stačí zadat cestu k dokumentu a emulátor se začne chovat jako klasický telefon. Pokud zjistí nesprávnou syntaxi, upozorní vás a zároveň oznámí, na kterém řádku a k jaké chybě došlo. Dokáže rovněž zobrazit zkompilovaný zdroj, a to v podobě zdrojového textu, nebo ve stromu elementů. Součástí NMIT je i velmi obsáhlá dokumentace, rozdělená do tří kapitol, na průvodce uživatele, vývojářský manuál a manuál pro wap-designéry.

Program v angličtině je freeware. Podmínkou však je, aby se zájemce na stránkách NOKIA Forum registroval jako WAP developer (wapový vývojář). Po registraci máte ihned přístup ke stažení veškerého WAP software. Nezapomeňte ale před vlastním stažením aplikace požádat na příslušné webové stránce NOKIA o přidělení kódu, který vám bude zaslán e-mailem.

Žádost o zaslání aktivačního čísla pro následnou instalaci apliakce

Je však třeba počítat s tím, že mobily různých výrobců přistupují k simulaci stránek různě. Takže žádná procházka po zelené louce! To platí i pro vývojové nástroje, některé nemají tuto záležitost vůbec ošetřenu. Mnoho simulátorů například nebere v potaz velikost stránky. Autorovi se sice jeho stránka zobrazuje v simulátoru dobře, ale ouha, pokud ji zobrazí na konkrétním mobilním telefonu, nestačí se divit. Často se v něm objeví hláška o chybě nebo změť nějakých kódů.

Rozhodující je velikost kódu, který vstupuje do mobilního telefonu z wapové brány. Ta totiž do jisté míry zpracuje původní stránku tak, že její velikost sníží. To je zvláště aktuální u dynamicky generovaných stránek, které zobrazují data přicházející z databáze, protože se nemusí do prohlížeče vejít. Ve skriptu proto musíme na to pamatovat a použít navigaci typu „Další stránka“. Prostě, vyhledávání rozdělíme do několika decků a záležitost velikosti původní stránky je vyřešena.

Některé novější vývojové nástroje dokáží programátorovi sdělit, jak je základní stránka velká. Upozorní autora, pokud velikost souboru přesáhne doporučovanou hranici 1 397 bajtů. Nejnovější mobilní telefony sice zobrazují stránky o velikosti až do 3 000 kB, pro jistotu je však nutno stále počítat s touto minimální hranicí.

WAP na vzestupu

Když shrnu předchozí informace, musím přiznat, že WAP zdaleka není dořešenou technologií. Nehledě k tomu, že existují rozporuplné názory pro i proti. Nespornou výhodou této technologie je ovšem využívání informačních služeb kdykoliv a kdekoliv, což mnozí uživatelé oceňují jako velmi praktické. A když vidím školáky, třeba s herní konsolí Nokia N-Gage, nemohu se zbavit dojmu, že WAP opět silně boduje. Už to není šedé nepřitažlivé okénko, tento stroj má vynikající barevné zobrazení podporující XHTML. Tvůrcům wapových stránek se tak naskýtají další možnosti, aby se přiblížili jednoduchým webům. Vždyť plně barevné stránky s obrázky se v tomto mobilu natahují jen několik vteřin! Troufám si tedy říci, že wap není mrtvou technologií, naopak, teprve s příchodem podobných zařízení ožívá…

Starší komentáře ke článku

Pokud máte zájem o starší komentáře k tomuto článku, naleznete je zde.

Štítky: Články

Mohlo by vás také zajímat

Nejnovější

Napsat komentář

Vaše e-mailová adresa nebude zveřejněna. Vyžadované informace jsou označeny *