Predtým, ako sa vrhneme na poslednú časť zo série Xcode project templates
si nezabudni prečítať predchádzajúce články. V tých nájdeš návody krok po kroku, ako spustiť a kde nájsť šablóny, ako automatizovať konfiguráciu projektu či konfiguráciu swiftlintu a swiftgenu.
Teraz späť k dnešnej téme. LicensePlist je nástroj, ktorý vygeneruje plist všetkých knižníc tretích strán vrátané SPM, Carthage a Cocoapod knižníc.
Na konci tohto článku by sme po vytvorení projektu a úspešnom spustení
na simulátore mali vidieť v nastaveniach aplikácie tlačidlo licencie kde uvidíme všetky použite knižnice tretích strán a to bez žiadneho setupu. Akonáhle úspešne vytvoríš template budúce integrácie už máš za sebou.
Najskôr si ale trocha priblížime kontext. Prečo vôbec uvádzať knižnice
v aplikácii? Dôvod je jednoduchý. Ak ste niekedy prezerali github nejakej knižnice určite ste si všimli súbor LICENSE.
Tu sú uvedené podmienky používania knižnice a aj keď je knižnica opensource, stále je možné, že vyžaduje deklaráciu použitia v appkách ktoré sú verejne dostupné. Nie každá knižnica to vyžaduje, ale je šanca, že skôr či neskôr narazíte na knižnicu, ktorá to vyžaduje. Je to vlastne spôsob, ako si nesposobiť právne problémy.
Teraz poďme na integráciu. Prvé čo treba urobiť je pridať si LicencePlist do pod dependencies v našom pod template.
Zároveň tým Template na pody nadobúda zmysel, pretože si uľahčujeme pridávanie viacerých knižnic, dohľadávanie názvu atď...
Ako ďalší krok vytvoríme nový sub-template, kde ako jediný súbor budeme mať settings.bundle a pri targete určíme podobne, ako v minulom článku target, kde budú 2 build scripty. Tieto musia odkazovať na Licene-plist script a druhý bude output kopírovať a vkladať do settings.bundle súboru. Následne po sebe uprace a output vymaže.
Settings.bundle vytvoríte jednoducho cez xcode a zvolením settings šablóny.
Vytvoríte tým niečo takéto, kde sa o content postará script, ktorý všetky informácie z knižníc v projekte vloží dnu. Takto vytvorený súbor skopírujte
a vložte do zložky našej sub-šablóny.
Následne pridáme túto šablónu do našej hlavnej projektovej šablóny.
Teraz už iba vygenerujte projekt a pozrite sa, ako sa vám settings bundle naplní informáciami o knižniciach.
Zároveň pri nainštalovaní aplikácie na simulátor je pekne vidno že licencie
sú pridané.
To je pre dnešný návod všetko. Zároveň treba dodať že všetky materiály nájdete na príslušnej branch nášho repozitára so šablónami.
Chceš sa stať súčasťou inovatívneho tímu? Pridaj sa k nám do iOS 🍎