Update #1:
Az iOSOpenDev szoftverfejlesztő csomag néhány perce megjelent! A vállalkozó kedvűek innen tölthetik le (amint azt már megszokhattuk, kizárólag Mac OS X platformra).
Korlátozások
Az Apple népszerű vizuális fejlesztőeszközei, az Xcode illetve az Interface Builder, az iPhone, iPod Touch és iPad alkalmazások fejlesztésére is szolgálnak. Igen ám, de a hivatalos alkalmazások korlátozottsága miatt ezek a fejlesztői környezetek az iOS-re való fejlesztési beállítások használata esetén csak limitált lehetőségeket nyújtanak a fejlesztőknek – alapértelmezetten. Ahhoz, hogy valaki a hivatalos Apple szoftverfejlesztő környezettel tudjon a Cydiába készülő alkalmazásokat vagy kiegészítőket írni, eddig különböző, meglehetősen hosszadalmas, ha nem is túl bonyolult – módosításokat, elrejtett beállítások piszkálását igényelték.
Természetesen nem minden cydiás fejlesztő használja az Xcode-ot programozáshoz. Akik nem támogatott operációs rendszeren (Windows vagy Linux) kívánnak iPhone programokat készíteni, azok számára ez az opció nem elérhető; ők a Dev-Team tagjai által készített, nyílt forráskódú, “nemhivatalos” toolchaint haszálhatják – erről már írtam bővebben itt.
A megoldás
Az Xcode egyik legnagyobb előnye, hogy beépülő sablonokkal, úgynevezett “template”-ekkel bővíthető. Egy ilyen csomag képében lesz hamarosan elérhető James Spencer új projektje: az iOSOpenDev.
Az Xcode-ba közvetlenül telepíthető “projektcsontvázak” különböző, iOS eszközökre hivatalosan el sem készíthető szoftvertípusok megírását, fordítását és kiadását teszik lehetővé. Ezekre néhány példa:
- MobileSubstrate-kiegészítők: a Cydiában megjelent legtöbb tweak lelke a MobileSubstrate. Részletesen nemrég írtunk róla. Ez a fajta megoldás nem “normális” alkalmazások, hanem a rendszerbe dinamikusan betölthető, úgynevezett szoftverkönyvtárak létrehozását igényli. Ezt az Xcode iOS platformra nem, csak Mac OS X-re való fejlesztés esetén engedélyezi.
- Fejlesztői könyvtárak: hasonló technológiával készülő kódbázisok; lényegük, hogy az egyszer valaki által megírt, jól működő kódot ne kelljen minden programozónak újra és újra “feltalálnia”, hanem újrahasználhassa azt.
- SBSettings kapcsolók: szintén a “dinamikus könyvtár” koncepcióját felhasználó kiegészítők, melyek a népszerű tweak, az SBSettings számára teszik elérhetővé bizonyos rendszerbállítások gyors módosítását.
- Parancssoros programok: mivel az iOS alapjában véve nem rendelkezik szöveges felhasználói felülettel, csak grafikussal (valaha ez pont fordítva volt az operációs rendszerekkel…) a Nagy Testvér ezek megírását is letiltotta az Xcode-ban. Ezen funkcionalitás megléte azonban különösen fontos lehet olyan esetekben, mint például a Telesphoreo projekt. A Cydia készítője, Jay “Saurik” Freeman, elhatározta, hogy mivel az iOS (mint előde, a Mac OS) is Unix-szerű rendszer, leportolja a szabványos Unix eszközöket iOS-re – azonban ezek kivétel nélkül szöveges felületű parancsok voltak. A problémát persze kellő leleményességgel megoldotta Saurik, ám mostantól bármely fejlesztő részére könnyebb lehet az ehhez hasnonló programok fordítása.
Csomagolj, indulunk!
A túlélőcsomagban azonban nemcsak a fejlesztéshez, hanem a terjesztéshez is találunk segítséget. Programjainkból kellő konfigurálás után Debian csomagokat készíthetünk. Ez egy fájlformátum, melyet az ismert Linux disztribúció, a Debian csomagkezelője (APT, Advanced Packaging Tool – fejlett csomagkezelő eszköz) használ, és melyet nagyfokú használhatósága, rugalmassága és elterjedtsége miatt a Cydia is adaptált. Ezeket a csomagokat azután rögtön fel is tölthetjük a Cydiába, valamint közvetlenül telepíthetjük magára a készülékre is.
Hol találhatom meg?
A lelkes iOS fejlesztők a projekt hivatalos, egyelőre nem túlságosan aktív oldalán figyelemmel kísérhetik a fejleményeket: http://iosopendev.com/
No comment yet, add your voice below!