MechDome er et udviklerværktøj, der automatisk konverterer Android-apps til iOS- og OSX-apps

MechDome er et nyt udviklerværktøj, der automatisk konverterer Android-apps til iOS og bevarer alle UI-elementer og den mest indbyggede funktionalitet.

Udvikling på tværs af platforme har været en stor udfordring for de fleste uafhængige udviklere i mange år. Ganske ofte er det simpelthen for meget tids- og ressourceinvestering at lære et nyt programmeringssprog for at overføre din app til en anden platform.

I årevis er denne kendsgerning med ressourceallokering det, der har skubbet mange udviklere til primært at fokusere deres indsats på iOS, på grund af de mere lukrativt marked. Takket være projekter som f.eks Xamarin, dog har udviklere, der er fortrolige med C#, været i stand til at skubbe deres projekter på tværs af iOS, Android og Windows Mobile. Men Android-udviklere er mest fortrolige med at skrive i Java, så brug af Xamarin ville kræve en udvikler til at sætte sig ind i et nyt sprog og bygge platform. Vi har dækket et projekt, der har til formål at bygge bro mellem mobile operativsystemer ved at tilbyde en tværudviklingsplatform for Java-udviklere -

Intels Multi-OS Engine - men der er ingen at sige, hvor det projekt er på vej hen. Det er der MechDome kommer i.

MechDome er en nystartet virksomhed baseret i Californien og stiftet i januar, der har udviklet et konverteringsværktøj til automatisk oprette native iOS- og OS X-apps fra din Android-app. Ingen grund til at lære at bruge en ny IDE eller API. Alt du skal gøre er at sende en APK-fil til MechDome (ingen grund til at sende dem din kildekode) og det fuldautomatiske værktøj vil kompilere en selvstændig binær på få sekunder til iOS og OS X, som udvikleren derefter kan distribuere på Apples App Store. Vi satte os ned i et interview med MechDomes grundlægger og administrerende direktør, Mario Kosmiskas, for at se en demonstration af værktøjet i aktion - og det arbejder. Selvom der er nogle begrænsninger på grund af grundlæggende forskelle mellem, hvordan iOS og Android fungerer (som vi vil diskutere nedenfor), værktøjet har allerede produceret et par live apps på Apple App Store som f.eks det open source Reddit klient RedReader og en open sourceSudoku klient for at bevise, at det virker.


Android Apps på iOS med MechDome

Det erklærede mål for MechDome er at give udviklere mulighed for at konvertere en umodificeret Android-app til en indbygget iOS- eller OS X-app. Sammenlignet med teknologier som Intels Multi-OS Engine eller Xamarin, behøver en Android-udvikler ikke at vide det hvordan man binder et Objective-C bibliotek fordi værktøjet vil klare det for dig. Der er heller ikke behov for at bruge en UI-bygger til at ændre din Android-app, da MechDome håndterer konvertering af alle Android UI-elementer. Ja, selv Android-tablet-apps oversættes fint til et format, der passer til iPads.

MechDomes største løfte er, at den konverterede Android-app vil fungere på en måde, som brugere af mål-OS vil være bekendt med. For eksempel vil Android-delemenuen blive erstattet med det oprindelige delingsark i iOS og vil inkludere muligheden for at bruge AirDrop, hvis det er relevant. Apps, der sender meddelelser i Android, vil i stedet vise en meddelelse i iOS's meddelelsescenter. Visse hensigter, såsom at åbne et kamera på Android, vil faktisk åbne kameraet på iOS-enheden, og URL-hensigter på Android vil kalde Safari på iOS. Indholdsudbydere på Android, der har adgang til kontakter eller kalenderen, får i stedet adgang til de relevante iOS- eller OS X-databaser for disse oplysninger.

Generelt vil al hardwarefunktionalitet, der kræves til brugen af ​​en Android-app, blive kortlagt direkte til at bruge den relevante hardware i iOS. Softwarefunktioner kan dog opdeles i 3 forskellige kategorier: 1) funktionalitet, der ikke findes på iOS (såsom toast-meddelelsen) vil blive implementeret direkte, 2) funktionalitet, der findes på både iOS og Android, erstattes med den relevante iOS-metode, og 3) funktionalitet, der findes på iOS, men ikke på Android (såsom Apples 3D Touch-bibliotek), kan ikke konverteres, men kan implementeres via brug af et bibliotek. De fleste aktiviteter, visninger, tjenester, skåltaler og grundlæggende indholdsudbydere burde kunne konverteres fra Android til iOS, ifølge MechDomes grundlægger.

Men som tidligere nævnt, er der faktisk nogle begrænsninger for dette værktøj, der er pålagt af arten af, hvordan iOS fungerer. En af de største udfordringer for en Android-udvikler, der ønsker at konvertere sin app til iOS, er, hvordan man håndterer en baggrundstjeneste. iOS er meget mere stringent med hvornår og hvilke slags baggrundstjenester, som tredjepartsapplikationer kan køre, på godt og ondt. Ydermere er det rige hensigtssystem, der findes i Android, der muliggør inter-app-kommunikation, stort set fraværende på iOS. Endelig er Google Play Services API i øjeblikket ikke understøttet, så enhver app, der er afhængig af Google-tjenester, vil ikke fungere. Således vil udviklere for det meste være begrænset til funktionalitet, der tilgås direkte ved manuel brugerinput, hvilket ikke burde udgøre et væsentligt problem for de fleste spil eller apps.

MechDome i brug

I en privat demo ser værktøjet faktisk ud til at fungere som annonceret. Mr. Kosmiskas demonstrerede kompilering af flere fuldt funktionelle Android-apps til fungerende iOS- og OSX-apps. Toast-meddelelser, meddelelser i meddelelsescenteret, webvisning, placeringsadgang, tekstinput og generel funktionalitet af UI-elementer fungerede alt sammen i demo. AOSP-beregneren, der kører på iOS, så ud og fungerede præcis, som den gør på enhver Android-enhed.

Opdatering af en applikation og genkompilering til iOS blev også vist, og processen ret enkel. Udvikleren, i dette tilfælde Mr. Kosmiskas, demonstrerede at ændre en tekstboks til at vise "XDA-Developers" i Android Studio. Han eksporterede derefter appen, genererede en signeret APK og kompilerede iOS- og OS X-binære filer på få sekunder fra MechDome-serveren. Da iOS-appen blev startet ved hjælp af en emulator, var ændringerne i Android Studio til stede.

I øjeblikket gennemgår MechDome et gratis offentligt betaprogram. Udviklere kan registrere deres app på MechDome-webstedet for at modtage en invitation til at teste konvertering af deres Android-app. Der er endnu ikke offentliggjort nogen prisoplysninger for tjenesten, desværre. Alligevel er det et interessant projekt at være på udkig efter, hvis du er en Android-udvikler, der gerne vil lave bølger i Apples økosystem uden at skulle bruge en stor indsats på egen hånd.