Článek  |   Diskuze  |   Ukázat zdroj  |   Historie

Jak naprogramovat vlastní Opera Unite aplikaci

Z Operacesky Wiki

Přejít na: navigace, hledání

Vytváření Opera Unite aplikace je velmi jednoduché a v zásadě si vystačíte se znalostmi, textovým editorem a prohlížečem Opera pro počítač s podporou Opera Unite aplikací. Následující text se vám pokusí přiblížit proces, jakým vytvořit Opera Unite aplikaci.

Opera Unite aplikace je přeneseně jen trochu jiný widget (alias pomůcka). Opera Unite aplikace obsahuje logiku, která řídí přijímání dotazů a odpovídání na ně. Widget sloužící jako Opera Unite aplikace obsahuje v config.xml obsah podobný následujícímu:

<feature name="http://xmlns.opera.com/webserver">
  <param name="type" value="service"/>
  <param name="servicepath" value="blog"/>
</feature>

V tomto případě se aktivuje speciální objekt v JavaScriptu opera.io.webserver. Pro více informací o JavaScriptu pro Opera Unite aplikace navštivte stránku Opera Unite Web Server JavaScript API.

Protože je použita technologie Opera Widgetů (Pomůcek), Opera Unite aplikace funguje pomocí standardních technologií HMTL, CSS a JavaScript. Opera Unite Aplikace ale mohou využívat dalších vlastností, které widgety nenabízejí - například přistupovat k souborovému systému operačního systému uživatele.

Obsah

Struktura obsahu unite aplikace

Obsah balíku unite aplikace je následující:

  • config.xml - definice unite aplikace
  • index.html - obsah, který se zobrazí po přístoupení k aplikaci
  • public_html - statický obsah viditelný pro uživatele unite aplikace
  • další adresáře s vlastním obsahem

Opera Unite aplikace je distribuována v podobě zazipovaného balíku s koncovkou ".us". Po přetáhnutí balíku do prohlížeče se Opera Unite aplikace spustí.

poublic_html adresář nebude viditelný, pokud bude jinde než v "rootu" archívu - tzn. že uvnitř archívu bude ještě adresář, ve kterém teprve bude public_html adresář.

URL pro přístup k unite aplikaci

Opera Unite aplikace má předem danou strukturu URL adresy, kterou je volána - níže je uveden příklad:

http://pocitac.uzivatel.operaunite.com/aplikace

Obecný popis spuštění a práce s unite aplikací najdete na Jak začít využívat Opera Unite nebo Základní informace o technologii Opera Unite.

Jednoduchá unite aplikace

Pokusíme se teď popsat těm z vás, kteří mají zájem a chtějí rychle proniknout do vytváření Opera Unite aplikací, jednoduchou aplikaci - Hello World unite_app. Archív stáhněte a rozbalte. Stačí jej poté přetáhnout do prohlížeče Opera. Pokud jej opětovně rozbalíte v programu, který rozbaluje zip archívy, uvidíte adresářovou strukturu a zdrojové soubory.

Link pro stažení aplikace: Unite app.ua.zip

Následuje popis obsahu balíku.

config.xml

Definice aplikace. Zde není co dodat, definuje jméno aplikace, autora, id a další věci. Pro podrobnější popis přejděte na článek Creating your first opera widget/.

<?xml version='1.0' encoding='UTF-8'?>
<widget>
  <widgetname>Hello World App</widgetname>
  <description>Hello world example of Opera Unite App</description>
  <author>
    <name>Martin Polovinčák</name>
    <organisation>operacesky.net</organisation>
  </author>
  <feature name="http://xmlns.opera.com/webserver">
    <param name="type" value="service"/>
    <param name="servicepath" value="unite_app"/>
  </feature>
</widget>

index.html

Soubor, který se ukáže, pokud uživatel přistoupí k aplikaci. V případě naší aplikace si všimněte definice kódování (kvůli českým znakům) a spuštění javascriptu, který řídí celou logiku aplikace.

<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Strict//EN' 'http://www.w3.org/TR/2000/REC-xhtml1-20000126/DTD/xhtml1-strict.dtd'>
<html xmlns='http://www.w3.org/1999/xhtml' xml:lang='cs' lang='cs' >
 <head>
	<meta http-equiv='content-type' content='text/html;  charset=UTF-8' /> 
	<meta http-equiv='Content-language' content='cs' /> 
	<script src="script/script.js"></script>
  </head>
  <body></body>
</html>

script/script.js

Javascript, který řídí chod aplikace. V našem případě velmi jednoduchý. Na začátku obsahuje napojení na opera unite jádro:

window.onload = function () {
    webserver = opera.io.webserver
    if (webserver)
    {
        webserver.addEventListener('_index', helloText, false);
        webserver.addEventListener('clear', clearText, false);
    }
}

Celá aplikace pracuje na principu vyvolávání událostí. Ty by měly být iniciátorem toho, co bude provádět aplikace. Výše uvedený kód napojí naši aplikace na události:

  • _index - spuštění aplikace
  • clear

Události jsou uvedeny při práci s aplikací v URL. Takže například naše akce clear bude zavolána pomocí URL:

http://URL_APLIKACE/clear/

Dále v souboru najdete jednotlivé funkce, které jsou volány pro příslušné akce. Pokud chcete, aby funkce něco vypsala do okna prohlížeče, slouží k tomu následující posloupnoust funkcí:

  • var response = e.connection.response; - inicializace výstupu
  • response.write('VYPIS'); - výpis obsahu
  • response.close(); - ukončení výpisu a odeslání prohlížeči k zobrazení

public_html

Adresář, který má zvláštní význam - lze do něj totiž přistupovat. Je to jediné místo, do kterého vidí v rámci unite aplikace uživatel. V našem případě obsahuje pouze kaskádový styl.