MechDome er et nytt utviklerverktøy som automatisk konverterer Android-apper til iOS, og beholder alle brukergrensesnittelementer og mest innebygde funksjoner.
Utvikling på tvers av plattformer har vært en stor utfordring for de fleste uavhengige utviklere i mange år. Ganske ofte er det rett og slett for mye tid og ressursinvestering å lære et nytt programmeringsspråk for å overføre appen din til en annen plattform.
I årevis har dette faktum med ressursallokering vært det som har presset mange utviklere til først og fremst å fokusere innsatsen på iOS, på grunn av mer lukrativt marked. Takket være prosjekter som f.eks XamarinUtviklere som er kjent med C# har imidlertid vært i stand til å presse prosjektene sine på tvers av iOS, Android og Windows Mobile. Men Android-utviklere er mest kjent med å skrive i Java, så bruk av Xamarin vil kreve at en utvikler blir kjent med et nytt språk og en ny plattform. Vi har dekket ett prosjekt som tar sikte på å bygge bro mellom mobile operativsystemer ved å tilby en kryssutviklingsplattform for Java-utviklere -
MechDome er et oppstartsselskap basert i California og innlemmet i januar som har utviklet et konverteringsverktøy for å opprette automatiske iOS- og OS X-apper fra Android-appen din. Du trenger ikke å lære hvordan du bruker en ny IDE eller API. Alt du trenger å gjøre er å sende en APK-fil til MechDome (du trenger ikke å sende dem kildekoden din), og det helautomatiske verktøyet vil kompilere en frittstående binær i løpet av sekunder for iOS og OS X som utvikleren deretter kan distribuere på Apples App Store. Vi satte oss ned i et intervju med MechDomes grunnlegger og administrerende direktør, Mario Kosmiskas, for å se en demonstrasjon av verktøyet i aksjon – og det virker. Selv om det er noen begrensninger på grunn av grunnleggende forskjeller mellom hvordan iOS og Android fungerer (som vi vil diskutere nedenfor), har verktøyet allerede produsert noen få live-apper på Apple App Store, for eksempel de åpen kilde Reddit klient RedReader og en åpen kildeSudoku klient for å bevise at det fungerer.
Android-apper på iOS med MechDome
Det uttalte målet til MechDome er å la utviklere konvertere en umodifisert Android-app til en innebygd iOS- eller OS X-app. Sammenlignet med teknologier som Intels Multi-OS Engine eller Xamarin, trenger ikke en Android-utvikler å vite hvordan binde et Objective-C-bibliotek fordi verktøyet vil håndtere det for deg. Det er heller ikke nødvendig å bruke en brukergrensesnittbygger for å endre Android-appen din, ettersom MechDome håndterer konvertering av alle Android-grensesnittelementer. Ja, til og med Android-nettbrettapper oversettes fint til et format som passer for iPads.
MechDomes største løfte er at den konverterte Android-appen vil fungere på en måte som brukere av mål-OS vil være kjent med. For eksempel vil Android-delingsmenyen bli erstattet med det opprinnelige delingsarket i iOS, og vil inkludere muligheten til å bruke AirDrop hvis det er aktuelt. Apper som legger ut varsler i Android vil i stedet vise et varsel i iOSs varslingssenter. Visse hensikter som å åpne et kamera på Android vil faktisk åpne kameraet på iOS-enheten, og URL-hensikter på Android vil kalle Safari på iOS. Innholdsleverandører på Android som får tilgang til kontakter eller kalenderen vil i stedet få tilgang til de relevante iOS- eller OS X-databasene for denne informasjonen.
![](/f/7e202a381b83b433047af68ad21086b0.png)
![](/f/8781a12b39164e1c07a964149ee4612c.png)
![](/f/3633d682978ac9a6432b6cf05e6280da.png)
![](/f/a8b3f5b63e7cd660ca3b675d3111f481.png)
![](/f/f53f1aa5b9651b3abcd7a2f27751d53c.png)
Men som nevnt tidligere, er det faktisk noen begrensninger for dette verktøyet som er pålagt av naturen til hvordan iOS fungerer. En av de største utfordringene en Android-utvikler står overfor som ønsker å konvertere appen sin til iOS, er hvordan man håndterer en bakgrunnstjeneste. iOS er mye strengere med når og hva slags bakgrunnstjenester som tredjepartsapplikasjoner kan kjøre, på godt og vondt. Videre er det rike intensjonssystemet som finnes i Android som tillater kommunikasjon mellom apper, stort sett fraværende på iOS. Til slutt støttes ikke Google Play Services API for øyeblikket, så alle apper som er avhengige av Google-tjenester vil ikke fungere. Dermed vil utviklere stort sett være begrenset til funksjonalitet som er tilgjengelig direkte ved manuell brukerinndata, noe som ikke burde utgjøre et betydelig problem for de fleste spill eller apper.
MechDome i bruk
I en privat demo ser verktøyet ut til å fungere som annonsert. Mr. Kosmiskas demonstrerte å kompilere flere fullt funksjonelle Android-apper til fungerende iOS- og OSX-apper. Toast-varsler, varsler i varslingssenteret, nettvisning, plasseringstilgang, tekstinntasting og generell funksjonalitet til UI-elementer fungerte i demo. AOSP-kalkulatoren som kjører på iOS så ut og fungerte akkurat som den gjør på alle Android-enheter.
![](/f/8351ae25c0433216572179b9a776cf28.png)
![](/f/a3dd3d04a412aefb84401268b94b3074.png)
Å oppdatere en applikasjon og kompilere den på nytt for iOS ble også vist, og prosessen ganske enkel. Utvikleren, i dette tilfellet Mr. Kosmiskas, demonstrerte å endre en tekstboks for å vise "XDA-Developers" i Android Studio. Deretter eksporterte han appen, genererte en signert APK og kompilerte iOS- og OS X-binærfilene på sekunder fra MechDome-serveren. Da iOS-appen ble startet med en emulator, var endringene gjort i Android Studio tilstede.
For øyeblikket gjennomgår MechDome et gratis offentlig betaprogram. Utviklere kan registrere appen deres på MechDome-nettstedet for å motta en invitasjon til å teste konvertering av Android-appen deres. Ingen prisinformasjon er ennå avduket for tjenesten, dessverre. Likevel er det et interessant prosjekt å være på utkikk etter hvis du er en Android-utvikler som ønsker å til slutt lage bølger i Apples økosystem uten å måtte bruke mye krefter på egen hånd.