A MechDome egy új fejlesztői eszköz, amely automatikusan konvertálja az Android-alkalmazásokat iOS-re, és megtartja az összes felhasználói felület elemet és a legtöbb natív funkciót.
A platformok közötti fejlesztés évek óta komoly kihívást jelent a legtöbb független fejlesztő számára. Gyakran előfordul, hogy egyszerűen túl sok idő- és erőforrás-befektetés egy új programozási nyelv megtanulása ahhoz, hogy alkalmazását egy másik platformra vigye át.
Az erőforrások elosztásának ez a ténye évek óta arra készteti a fejlesztőket, hogy elsősorban az iOS-re összpontosítsák erőfeszítéseiket, mivel jövedelmező piac. Köszönhetően olyan projekteknek, mint pl Xamarin, azonban a C#-ban jártas fejlesztők képesek voltak projektjeiket iOS, Android és Windows Mobile rendszereken is megvalósítani. Az Android-fejlesztők azonban leginkább a Java nyelven írnak, ezért a Xamarin használatához a fejlesztőnek meg kell ismerkednie egy új nyelvvel és platformot kell építenie. Lefedtünk egy projektet, amelynek célja a mobil operációs rendszerek közötti szakadék áthidalása azáltal, hogy több fejlesztési platformot biztosítunk a Java fejlesztők számára –
Intel Multi-OS Engine - de nem lehet tudni, merre tart ez a projekt. Ahol MechDome bejön.A MechDome egy kaliforniai székhelyű induló vállalkozás, amelyet januárban alapítottak, és kifejlesztett egy konverziós eszközt a automatikusan létrehozhat natív iOS és OS X alkalmazásokat Android-alkalmazásából. Nem kell megtanulnia egy új IDE vagy API használatát. Mindössze annyit kell tennie, hogy el kell küldenie egy APK-fájlt a MechDome-nak (nem kell elküldenie a forráskódot), és a teljesen automatizált eszközt. másodpercek alatt összeállít egy önálló bináris fájlt iOS és OS X rendszerhez, amelyet a fejlesztő az Apple App Store-ban terjeszthet. Leültünk egy interjúba a MechDome alapítójával és vezérigazgatójával, Mario Kosmiskasszal, hogy lássuk az eszköz bemutatóját működés közben – és művek. Bár van néhány korlátozás az iOS és az Android működése közötti alapvető különbségek miatt (amit alább tárgyalunk), az eszköz már készített néhány élő alkalmazást az Apple App Store-ban, mint pl a nyílt forráskód Reddit kliens RedReader és egy nyílt forráskódSudoku ügyfelet, hogy igazolja, hogy működik.
Android alkalmazások iOS rendszeren MechDome-mal
A MechDome kinyilvánított célja, hogy lehetővé tegye a fejlesztők számára, hogy egy módosítatlan Android-alkalmazást natív iOS vagy OS X alkalmazássá alakítsanak át. Az olyan technológiákhoz képest, mint az Intel Multi-OS Engine vagy a Xamarin, az Android-fejlesztőknek nem kell tudniuk hogyan kell egy Objective-C könyvtárat kötni mert az eszköz megoldja ezt helyetted. Nincs szükség UI-készítőre sem az Android-alkalmazás módosításához, mivel a MechDome kezeli az Android felhasználói felület összes elemének konvertálását. Igen, még az Android táblagépes alkalmazások is szépen lefordíthatók az iPad számára megfelelő formátumba.
A MechDome legnagyobb ígérete az, hogy az átalakított Android-alkalmazás olyan módon fog működni, amelyet a cél operációs rendszer felhasználói ismernek. Például az Android megosztási menüjét a natív megosztási lap váltja fel iOS rendszerben, és adott esetben lehetővé teszi az AirDrop használatát. Az Androidon értesítéseket közzétevő alkalmazások ehelyett értesítést jelenítenek meg az iOS értesítési központjában. Bizonyos szándékok, mint például a kamera megnyitása Androidon, valóban megnyitja a kamerát az iOS-eszközön, az Android-alapú URL-célok pedig a Safarit hívják iOS rendszeren. Azok az Android rendszerű tartalomszolgáltatók, amelyek hozzáférnek a névjegyekhez vagy a naptárhoz, ehelyett a megfelelő iOS vagy OS X adatbázisokhoz hozzáférnek ehhez az információhoz.
De amint azt korábban említettük, ennek az eszköznek valóban vannak korlátozásai, amelyeket az iOS működésének természete szab meg. Az alkalmazását iOS-re konvertálni kívánó Android-fejlesztők egyik legnagyobb kihívása a háttérszolgáltatások kezelése. Az iOS sokkal szigorúbb azzal kapcsolatban, hogy a harmadik féltől származó alkalmazások mikor és milyen háttérszolgáltatásokat futtathatnak, jóban vagy rosszban. Ezenkívül az Androidban jelenlévő gazdag intent rendszer, amely lehetővé teszi az alkalmazások közötti kommunikációt, nagyrészt hiányzik az iOS rendszeren. Végül, a Google Play Services API jelenleg nem támogatott, így a Google szolgáltatásokra támaszkodó alkalmazások nem fognak működni. Így a fejlesztők leginkább azokra a funkciókra korlátozódnak, amelyekhez manuális felhasználói bevitellel közvetlenül hozzáférnek, ami nem jelenthet jelentős problémát a legtöbb játék vagy alkalmazás esetében.
MechDome használatban
Egy privát demóban az eszköz valóban úgy tűnik, hogy a hirdetett módon működik. Kosmiskas úr bemutatta több teljesen működőképes Android-alkalmazás összeállítását működő iOS- és OSX-alkalmazásokká. A Toast értesítések, az Értesítési Központ értesítései, a webnézet, a helyhozzáférés, a szövegbevitel és a felhasználói felület elemeinek általános funkciói mind működtek a demóban. Az iOS-en futó AOSP-kalkulátor pontosan úgy nézett ki és működött, mint bármely Android-eszközön.
Egy alkalmazás frissítése és újrafordítása iOS-re is látható volt, és a folyamat meglehetősen egyszerű. A fejlesztő, jelen esetben Kosmiskas úr, bemutatta, hogy egy szövegmezőt megváltoztatott az "XDA-Developers" kifejezésre az Android Stúdióban. Ezután exportálta az alkalmazást, generált egy aláírt APK-t, és másodpercek alatt lefordította az iOS és OS X binárisokat a MechDome szerverről. Amikor az iOS-alkalmazást emulátorral indították, az Android Stúdióban végrehajtott módosítások jelen voltak.
Jelenleg a MechDome egy ingyenes nyilvános bétaprogramon megy keresztül. A fejlesztők megtehetik regisztrálja alkalmazásukat a MechDome webhelyen, hogy meghívást kapjanak Android-alkalmazásuk konvertálásának tesztelésére. A szolgáltatás áráról sajnos még nem hozták nyilvánosságra az információkat. Mindazonáltal ez egy érdekes projekt, amelyre figyelni kell, ha Ön Android-fejlesztő, aki végül úgy kíván hullámokat kelteni az Apple ökoszisztémájában, hogy nem kell különösebb erőfeszítést tennie.