„MechDome“ yra kūrėjo įrankis, kuris automatiškai konvertuoja „Android“ programas į „iOS“ ir „OSX“ programas

„MechDome“ yra naujas kūrėjo įrankis, kuris automatiškai konvertuoja „Android“ programas į „iOS“ ir išsaugo visus vartotojo sąsajos elementus bei daugumą vietinių funkcijų.

Kelių platformų kūrimas daugelį metų yra didelis iššūkis daugumai nepriklausomų kūrėjų. Gana dažnai išmokti naują programavimo kalbą, norint perkelti programą į kitą platformą, tiesiog per daug laiko ir išteklių investicijos.

Daugelį metų šis išteklių paskirstymo faktas paskatino daugelį kūrėjų pirmiausia sutelkti savo pastangas į iOS, nes pelninga rinka. Dėka tokių projektų kaip KsamarinasTačiau kūrėjai, kurie yra susipažinę su C#, galėjo įgyvendinti savo projektus iOS, Android ir Windows Mobile. Tačiau „Android“ kūrėjai yra labiausiai susipažinę su „Java“ rašymu, todėl norint naudoti „Xamarin“, kūrėjas turėtų susipažinti su nauja kalba ir sukurti platformą. Apžvelgėme vieną projektą, skirtą sumažinti atotrūkį tarp mobiliųjų operacinių sistemų, suteikdami kelių kūrimo platformą „Java“ kūrėjams. „Intel“ kelių OS variklis - bet neaišku, kur tas projektas veda. Štai kur MechDome įeina.

„MechDome“ yra Kalifornijoje įsikūrusi ir sausio mėn. įsteigta pradedanti įmonė, kuri sukūrė konversijos įrankį į automatiškai sukurkite vietines „iOS“ ir „OS X“ programas iš „Android“ programos. Nereikia mokytis naudoti naujos IDE ar API. Viskas, ką jums reikia padaryti, tai nusiųsti APK failą į MechDome (nereikia siųsti jiems šaltinio kodo) ir visiškai automatizuotą įrankį per kelias sekundes sudarys atskirą dvejetainį failą, skirtą iOS ir OS X, kurį kūrėjas galės platinti Apple App Store. Susėdome į interviu su „MechDome“ įkūrėju ir generaliniu direktoriumi Mario Kosmišku, kad pamatytume įrankio demonstravimą – ir jis darbai. Nors yra tam tikrų apribojimų dėl esminių iOS ir Android veikimo skirtumų (ką aptarsime toliau), įrankis jau sukūrė keletą tiesioginių programų Apple App Store, pvz., į atviro kodo Reddit klientas RedReader ir an atviro kodoSudoku klientui įrodyti, kad jis veikia.


„Android“ programos „iOS“ su „MechDome“.

Nurodytas „MechDome“ tikslas yra leisti kūrėjams konvertuoti nepakeistą „Android“ programą į vietinę „iOS“ arba „OS X“ programą. Palyginti su tokiomis technologijomis kaip Intel Multi-OS Engine ar Xamarin, Android kūrėjas neturi žinoti kaip susieti Objective-C biblioteką nes įrankis tai padarys už jus. Taip pat nereikia naudoti vartotojo sąsajos kūrimo priemonės, kad galėtumėte keisti „Android“ programą, nes „MechDome“ konvertuoja visus „Android“ vartotojo sąsajos elementus. Taip, net „Android“ planšetinių kompiuterių programos puikiai paverčiamos „iPad“ tinkamu formatu.

Didžiausias „MechDome“ pažadas yra tai, kad konvertuota „Android“ programa veiks taip, kaip tikslinės OS naudotojai bus susipažinę. Pavyzdžiui, „Android“ bendrinimo meniu bus pakeistas vietiniu „iOS“ bendrinimo lapu ir, jei taikoma, bus galima naudoti „AirDrop“. Programos, kurios skelbia pranešimus „Android“, pateiks pranešimą „iOS“ pranešimų centre. Tam tikri tikslai, pvz., „Android“ atidarius kamerą, iš tikrųjų atidarys „iOS“ įrenginio kamerą, o „Android“ URL tikslai „iOS“ iškvies „Safari“. Turinio teikėjai sistemoje Android, kurie pasiekia kontaktus arba kalendorių, pasieks atitinkamas iOS arba OS X duomenų bazes, kad gautų šią informaciją.

Tačiau apskritai visos aparatinės įrangos funkcijos, reikalingos norint naudoti „Android“ programą, bus tiesiogiai susietos su atitinkama „iOS“ aparatūra. Tačiau programinės įrangos funkcijas galima suskirstyti į 3 skirtingas kategorijas: 1) funkcijos, kurių nėra „iOS“ (pvz., skrudinimo pranešimas) bus įdiegta tiesiogiai, 2) funkcionalumas, egzistuojantis tiek iOS, tiek Android, pakeičiamas atitinkamu iOS metodu ir 3) funkcijos, kurios egzistuoja iOS, bet ne Android (pvz., Apple 3D Touch biblioteka), negali būti konvertuojamos, bet gali būti įdiegtos naudojant naudotis biblioteka. Pasak „MechDome“ įkūrėjo, dauguma veiklos, peržiūrų, paslaugų, tostų ir pagrindinio turinio teikėjų turėtų būti konvertuojami iš „Android“ į „iOS“.

Tačiau, kaip minėta anksčiau, iš tikrųjų yra tam tikrų šio įrankio apribojimų, kuriuos nustato iOS veikimo pobūdis. Vienas didžiausių iššūkių, su kuriuo susiduria „Android“ kūrėjas, norintis konvertuoti savo programą į „iOS“, yra tai, kaip valdyti foninę paslaugą. „iOS“ yra daug griežtesnė nustatant, kada ir kokias fonines paslaugas gali paleisti trečiųjų šalių programos, geriau ar blogiau. Be to, „iOS“ sistemoje beveik nėra „Android“ esančios turtingos ketinimų sistemos, leidžiančios palaikyti ryšį tarp programų. Galiausiai, „Google Play“ paslaugų API šiuo metu nepalaikoma, todėl jokia „Google“ paslaugomis besiremianti programa neveiks. Taigi kūrėjai daugiausia apsiribos funkcijomis, kurias tiesiogiai pasiekia naudotojas rankiniu būdu, o tai neturėtų kelti didelių problemų daugeliui žaidimų ar programų.

Naudojamas MechDome

Atrodo, kad privačioje demonstracijoje įrankis veikia taip, kaip reklamuojama. Ponas Kosmiskas pademonstravo kelių visiškai veikiančių Android programėlių kompiliavimą į veikiančias iOS ir OSX programėles. „Toast“ pranešimai, pranešimai pranešimų centre, žiniatinklio rodinys, prieiga prie vietos, teksto įvestis ir bendrosios vartotojo sąsajos elementų funkcijos demonstracinėje versijoje. AOSP skaičiuotuvas, veikiantis „iOS“, atrodė ir veikė lygiai taip pat, kaip ir bet kuriame „Android“ įrenginyje.

Taip pat buvo parodytas programos atnaujinimas ir pakartotinis kompiliavimas, skirtas iOS, o procesas yra gana paprastas. Kūrėjas, šiuo atveju ponas Kosmiskas, pademonstravo „Android Studio“ teksto laukelio pakeitimą, kad būtų rodomas „XDA-Developers“. Tada jis eksportavo programą, sugeneravo pasirašytą APK ir per kelias sekundes iš „MechDome“ serverio sukompiliavo „iOS“ ir „OS X“ dvejetainius failus. Kai „iOS“ programa buvo paleista naudojant emuliatorių, buvo atlikti „Android Studio“ pakeitimai.

Šiuo metu „MechDome“ vykdoma nemokama vieša beta programa. Kūrėjai gali užregistruoti savo programą „MechDome“ svetainėje, kad gautų kvietimą išbandyti „Android“ programos konvertavimą. Deja, informacijos apie paslaugos kainas dar nepaskelbta. Vis dėlto tai yra įdomus projektas, į kurį reikia atkreipti dėmesį, jei esate „Android“ kūrėjas, norintis ilgainiui sukelti bangas „Apple“ ekosistemoje, neįdėdamas daug pastangų.