Hogyan készítsünk Firefox OS webalkalmazást?

Alapfogalmak

Mint minden platform, a Firefox OS népszerűségét is döntően befolyásolja majd az elérhető appok minősége és száma. Nem jönnek a felhasználók, amíg nincsenek alkalmazások, nem éri meg a befektetést az alkalmazások elkészítése, amíg nincsenek felhasználók. A kör bezárult.

A Firefox OS esetében talán nem ilyen nagyon nehéz a döntés a tartalomszolgáltatók szempontjából, hiszen azoknak az entitásoknak, amelyeknek már van mobiloldaluk, már szinte van egy is webappjuk Firefox OS-hez. Ez azt jelenti, hogy pár apró kiegészítéssel akár néhány perc alatt elkészülhet az a webapp, amely már telepíthető és tesztelhető Firefox OS-szel szerelt készüléken. Az appok készítésének menete részletesen dokumentált. A webalkalmazások létrehozásához szükség lesz az eredeti weboldalra, amelyet picit módosítani kell. Ezen felül kell még egy manifest.webapp és egy valamilyen.appcache fájl is a szerverről megfelelő módon kiszolgálva, vagy a packed típusú alkalmazásba csomagolva.

App-típus gyorstalpaló

A Firefox OS az appokhoz különféle biztonsági szinteket rendel, függően attól, hogy mennyire megbízható az app. Az appok a terjesztés formája szerint lehetnek csomagolt (packed) vagy hosztolt (hosted) appok. A packed app minden szükséges összetevőt tartalmaz egy webapp fájlban, amely egy zip fájl.

A jéghegy csúcsán a certified appok vannak, amelyek telefon beépített alkalmazásai. Ilyet nem tud telepíteni a felhasználó, lényegében a firmware készítői, a szolgáltatók és a core rendszer fejlesztői képesek erre. Természetesen egy ilyen appra merge requestet beküldhet a Firefox OS github repóba bárki, de az appok ellenőrzése és jóváhagyása nagyon szigorú keretek között zajlik. Ezek az appok minden telefon-erőforráshoz hozzáférhetnek a meghatározott jogosultságok alapján. Az ilyen appok kizárólag packed formában léteznek.

Ez alatt vannak a privileged appok, mely a Firefox Marketplace-re beküldött és az ellenőrök által jóváhagyott alkalmazások csoportja. Ezek az appok is átesnek ellenőrzésen, amely után a felhasználók számára elérhetővé és telepíthetővé válnak. A privileged appok kevesebb jogosultsággal rendelkeznek, illetve a jogosultságok megadásának nagy részéről a felhasználók dönthetnek a telepítéskor, valamint a beállítások révén a későbbiekben is. Az ilyen appok kizárólag packed formában léteznek.

A hegy lábánál a sima alkalmazások vannak, amelyekben a rendszer nem bízik meg – mert nem ellenőrizték és hagyták jóvá az appok működését a Mozilla részéről. Az ilyen alkalmazások vagy packed, azaz egyetlen zip fájlba csomagoltak, vagy pedig hosted, azaz minden erőforrását távoli kiszolgálóról letöltő formátumban érheti el.

Az első tartalomszolgáltató appot nyilván ebben a hosted formában érdemes elkészíteni, de a továbbfejlesztések révén akár a privileged formátum is lehet a fejlesztés következő lépcsőfoka.

Bevezetés a webapp készítés tudományába.

Mitől lesz egy weboldal webapp?

A webappokat lényegében az különbözteti meg a weboldalaktól, hogy elérhető a készüléken lévő (vagy a számítógépre, telefonra telepített) Firefox számára egy manifest fájl, amely leírja, hogy hogyan kell az adott weboldalt kezelni webalkalmazásként: hol érhető el a tartalom, milyen jogosultságokat adjon a webappnak, mi a neve, hogyan lesz használható az app. Természetesen a távolról elérhető – hosted app, packed app, de még a Firefox Marketplace-re feltöltött és ellenőrzött privileged webapp – sem fér hozzá a telefon minden szolgáltatásához. A fájl lényegében egy JSON fájl, ami leírja az app működését. A fájl részletesebb leírása itt található.

Példa egy egyszerű „manifest.webapp” fájlra (UTF-8 karakterkódolás):

{
  "name": "MyContent App",
  "description": "MyContent for daily IT news",
  "launch_path": "/",
  "icons": {
    "128": "/img/icon-128.png"
  },
  "developer": {
    "name": "ITCompany",
    "url": "http://itcompany-homepage-here.org"
  },
  "default_locale": "en"
}

Ezzel már van egy webapp-kezdeményünk. Hogyan lehet ezt működövé varázsolni?

A cikk még nem ért véget, kérlek, lapozz!

Azóta történt

Előzmények

  • Firefox OS workshop november végén Budapesten

    Egész napos hackelést szervez a Mozilla Budapesten azok számára, akik már fejlesztenek vagy portolnak webappokat Firefox OS-re.

  • Tartsd meg a telefont, Firefox OS alkalmazásfejlesztő!

    Átalakul a Magyarországi Firefox OS fejlesztői partnerprogram, amelyben az értékes appok fejlesztői akár a Keon telefonokat is megtarthatják.

  • Firefox OS kisokos

    Érdemes áttekinteni a Firefox OS-szel kapcsolatos fejlesztői bemutatókat és cikkeket, amelyeknek hamarosan mindenki hasznát veheti.