Struktura a pravidla pro projekt mobilní aplikace

Spuštění aplikace

Aplikaci je třeba připravit a zbuildovat. K tomu spusťte následující příkazy.
Příkazy se spouští v příkazové řádce v linuxu nebo osx. Pro windows používáme git-bash.
Tady je návod na instalaci prostředí pro windowsiOS

Pro Android:

./aprepare.sh
./abuild.sh

Pro iOS:

./iprepare.sh
./ibuild.sh

Pro Windows Phone:

./wprepare.sh
./wbuild.sh

Skripty vytvoří verzi aplikace pro vývoj / interní testování. Pro tvorbu verze k distribuci slouží skripty: adist.sh, idist.sh, wdist.sh.

Výsledkem skriptu je .apk nebo .ipa soubor v kořenu projektu.

Buildovací skripty

Takto se buildují všechny naše aplikace. Skripty jsou udělané tak, aby je mohl spouštět integrační server Jenkins.

PrepareVytvoří strukturu pro platformu cordova: přidá platformy a pluginy. Může dělat změny Info.plist a android.xml.BuildZkompiluje aplikaci pro vývoj / test. Vytvoří v adresáři soubor s názvem PROJEKT-VERZE-BUILD.apk/ipaPublikaceVypublikuje verzi pro interní testováníReleaseVypublikuje verzi pro testování pro klientaDistribuceKompiluje aplikaci, vytvoří balíček k distribuci na portály

Přehled build skriptů:


AndroidiOSWindows Phone
Prepare./aprepare.sh./iprepare.sh./wprepare.sh
Build./abuild.sh./ibuild.sh./wbuild.sh
Publikace./apub.sh./ipub.shN/A
Release./arelease.sh./irelease.shN/A
Distribuce./adist.sh./idist.sh./wdist.sh

Struktura projektu - Cordova

config.xmldefinice projektubuild.jsoninformace o buildování na iOS.gitignoredefinice toho, co se nemá ukládat do gitucertcertifikáty, provisioning profilylibspluginy, které se nestahují z webures/iconikonyres/splashsplashewwwzdrojáky

Struktura projektu - Ionic 2

config.xmldefinice projektubuild.jsoninformace o buildování na iOS.gitignoredefinice toho, co se nemá ukládat do gitucertcertifikáty, provisioning profilylibspluginy, které se nestahují z weburesources/iconikonyresources/splashsplashesrczdrojáky

Bacha, zdrojáky jsou ve složce /src, odkud probíhá kompilace do /www. Adresář /www se do gitu neukládá, vytváří ho prepare skript.

Struktura minimálního projektu

Když je potřeba něco vyzkoušet

config.xmldefinice projektuwww/index.htmlHTML soubor s aplikací

Soubory

Soubor .gitignore definuje, co se do gitu neukládá.
Do GITu nepatří: platforms, plugins, *.apk, *.ipa

config.xml

Definuje název, verzi a parametry aplikace. Dále ikony a splash screeny. Zde se nepřidávají žádné pluginy (na rozdíl od phonegapu), pouze parametry!
Tag widget musí být v jednom řádku takto, protože ho očekávání build skripty:

<widget id="cz.inited.aplikace" version="1.0.9" xmlns="http://www.w3.org/ns/widgets" xmlns:cdv="http://cordova.apache.org/ns/1.0">

Ikony a splashe

Aktuálně používáme pouze obrázky ve formátu PNG. Pojmenovávají se takto: icon512x512.png, splash1536x2048.png.

Certifikáty a provisioning profily

Pro většinu projektů (které nepoužívají Apple Push Notifications) vystačíme s tímto:

  • pro vývoj a testování, předávání zákazníkům
    • Android: debug.keystore
    • iOS: development certifikát Jaroslav Pavlíček, provisioning profile VsichniVsechno. Certifikát generuje Jarda jednou za rok. Provisioning po každém přidaném zařízení.
  • pro distribuci, v adresáři cert:

Generování certifikátu pro Android:

$ keytool -genkey -v -keystore my-release-key.keystore
-alias alias_name -keyalg RSA -keysize 2048 -validity 10000