MechDome je vývojářský nástroj, který automaticky převádí aplikace pro Android na aplikace pro iOS a OSX

MechDome je nový vývojářský nástroj, který automaticky převádí aplikace pro Android na iOS a zachovává všechny prvky uživatelského rozhraní a většinu nativních funkcí.

Vývoj napříč platformami představuje pro většinu nezávislých vývojářů po mnoho let velkou výzvu. Docela často je to prostě příliš mnoho času a prostředků, abyste se naučili nový programovací jazyk, abyste mohli aplikaci přenést na jinou platformu.

Tato skutečnost alokace zdrojů je to, co po léta tlačí mnoho vývojářů k tomu, aby primárně zaměřili své úsilí na iOS, protože více lukrativní trh. Díky projektům jako např Xamarin, nicméně vývojáři, kteří znají C#, dokázali své projekty prosadit na iOS, Android a Windows Mobile. Vývojáři Androidu ale nejvíce znají psaní v Javě, takže použití Xamarinu by vyžadovalo, aby se vývojář seznámil s novým jazykem a platformou pro sestavení. Zabývali jsme se jedním projektem zaměřeným na překlenutí propasti mezi mobilními operačními systémy poskytnutím platformy pro vícero vývojářů pro vývojáře v jazyce Java –

Intel Multi-OS Engine - ale nedá se říct, kam ten projekt směřuje. To je tam kde MechDome přichází v.

MechDome je začínající společnost se sídlem v Kalifornii a založená v lednu, která vyvinula nástroj pro převod na automaticky vytvářet nativní aplikace pro iOS a OS X z vaší aplikace pro Android. Není třeba se učit, jak používat nové IDE nebo API. Vše, co musíte udělat, je odeslat soubor APK do MechDome (nemusíte jim posílat zdrojový kód) a plně automatizovaný nástroj zkompiluje během několika sekund samostatný binární soubor pro iOS a OS X, který pak vývojář může distribuovat na App Store společnosti Apple. Posadili jsme se v rozhovoru se zakladatelem a generálním ředitelem MechDome Mario Kosmiskasem, abychom viděli ukázku nástroje v akci – a to funguje. I když existují určitá omezení kvůli zásadním rozdílům mezi fungováním iOS a Androidu (o kterém budeme diskutovat níže), nástroj již vytvořil několik živých aplikací na Apple App Store, jako je např a open-source Klient Reddit RedReader a open-sourcesudoku klient prokázat, že to funguje.


Aplikace pro Android na iOS s MechDome

Stanoveným cílem MechDome je umožnit vývojářům převést neupravenou aplikaci pro Android na nativní aplikaci pro iOS nebo OS X. Ve srovnání s technologiemi, jako je Intel's Multi-OS Engine nebo Xamarin, nemusí vývojář Androidu vědět jak svázat knihovnu Objective-C protože tento nástroj to zvládne za vás. K úpravě vaší aplikace pro Android není ani potřeba používat tvůrce uživatelského rozhraní, protože MechDome zpracovává všechny prvky uživatelského rozhraní Android. Ano, dokonce i aplikace pro tablety pro Android se hezky překládají do formátu vhodného pro iPady.

Největším příslibem MechDome je, že převedená aplikace pro Android bude fungovat způsobem, který budou uživatelé cílového OS znát. Například nabídka sdílení pro Android bude nahrazena nativním listem sdílení v iOS a bude zahrnovat možnost používat AirDrop, pokud je to možné. Aplikace, které zasílají oznámení v systému Android, místo toho zobrazí oznámení v Centru oznámení systému iOS. Některé záměry, jako je otevření fotoaparátu v systému Android, skutečně otevřou fotoaparát v zařízení iOS a záměry URL v systému Android budou volat Safari v systému iOS. Poskytovatelé obsahu v systému Android, kteří přistupují ke kontaktům nebo kalendáři, budou místo toho přistupovat k příslušným databázím iOS nebo OS X pro tyto informace.

Obecně však platí, že všechny hardwarové funkce potřebné pro použití aplikace pro Android budou mapovány přímo pro použití příslušného hardwaru v iOS. Softwarové funkce však lze rozdělit do 3 odlišných kategorií: 1) funkce, které v systému iOS neexistují (jako je toastová zpráva) budou implementovány přímo, 2) funkce existující na iOS i Androidu budou nahrazeny příslušnou metodou iOS a 3) funkce, které existují na iOS, ale ne na Androidu (jako je knihovna 3D Touch společnosti Apple), nelze převést, ale lze je implementovat prostřednictvím používání knihovny. Většina aktivit, zobrazení, služeb, přípitků a poskytovatelů základního obsahu by podle zakladatele MechDome měla být konvertibilní z Androidu na iOS.

Ale jak již bylo zmíněno dříve, tento nástroj má skutečně určitá omezení, která jsou dána povahou toho, jak iOS funguje. Jednou z největších výzev, kterým čelí vývojáři pro Android, kteří chtějí převést svou aplikaci na iOS, je, jak zacházet se službou na pozadí. iOS je mnohem přísnější, pokud jde o to, kdy a jaké druhy služeb na pozadí mohou aplikace třetích stran spouštět, ať už k lepšímu nebo horšímu. Kromě toho systém bohatých záměrů přítomný v Androidu, který umožňuje komunikaci mezi aplikacemi, na iOS do značné míry chybí. A konečně, rozhraní Google Play Services API v současné době není podporováno, takže žádná aplikace spoléhající na služby Google nebude fungovat. Vývojáři tak budou většinou omezeni na funkčnost, která je přístupná přímo ručním zadáním uživatele, což by pro většinu her nebo aplikací nemělo představovat významný problém.

MechDome se používá

V soukromé ukázce se zdá, že nástroj skutečně funguje tak, jak je inzerováno. Pan Kosmiskas předvedl kompilaci několika plně funkčních aplikací pro Android do fungujících aplikací pro iOS a OSX. Toastová oznámení, oznámení v Oznamovacím centru, webové zobrazení, přístup k poloze, zadávání textu a obecná funkčnost prvků uživatelského rozhraní, to vše fungovalo v ukázce. Kalkulačka AOSP běžící na iOS vypadala a fungovala přesně jako na jakémkoli zařízení Android.

Byla také ukázána aktualizace aplikace a její překompilování pro iOS a proces je poměrně jednoduchý. Vývojář, v tomto případě pan Kosmiskas, předvedl změnu textového pole pro zobrazení „XDA-Developers“ v Android Studiu. Poté exportoval aplikaci, vygeneroval podepsaný soubor APK a zkompiloval binární soubory iOS a OS X během několika sekund ze serveru MechDome. Když byla aplikace pro iOS spuštěna pomocí emulátoru, změny provedené v Android Studiu byly přítomny.

V současné době prochází MechDome bezplatným veřejným beta programem. Vývojáři mohou zaregistrovat jejich aplikaci na webu MechDome, kde obdržíte pozvánku k testování převodu jejich aplikace pro Android. Bohužel zatím nebyly zveřejněny žádné informace o ceně služby. Přesto je to zajímavý projekt, který byste měli mít na pozoru, pokud jste vývojář pro Android, který chce nakonec udělat vlny v ekosystému Apple, aniž byste museli vynaložit velké vlastní úsilí.