The customer was in the process of developing an Android app. The task was to make the app multiplatform and develop an iOS version without pausing Android development.
We analyzed the project and created a customized plan for KMM integration. Then we wrote code for the second platform with the integration in mind, so that the customer could add new features of the Android version into the shared code.
What the customer wanted. Our customer is Megashots Internet Private Limited, an Indian company that owns a website for gaming and chatting.
Some states of India prohibit playing any games with cash prizes, so the sign up process on the website requires access to the user’s geolocation to determine the state they reside in. To solve this problem, the customer created the Android app.
Investors took interest in the project, and the customer quickly decided to create an iOS version as well. They chose KMM for development and reached to us for assistance. Multiplatforming would save development time and streamline maintenance of both platforms in the future, and we had the expertise to help with integrating it.
The development team. Two Android Developers, one iOS Developer, a Team Lead, and a Project Manager took part in the project on our side.
First, we laid down a migration plan. We began by analyzing the project and putting together a KMM migration plan. When we finish our part of the job, the customer will be able to use this plan to migrate new app features.
Then we transferred Android features to the iOS version. We started with the modules that didn’t contain any complex platform integrations or graphics: friend list, authorization, game history. We have extensive experience with building such modules, so migrating them took little time. Each module was migrated into the new design.
After we went over every feature that wasn’t being actively developed, we handed the project over to the customer.
We taught the customer how to migrate features. By the time we migrated all the existing features into the shared code, the customer had finished developing the module for ID and geolocation verification. With our guidance, they migrated the module into the multiplatform environment and got familiar with the process.
Here’s what we taught the customer:
Working with the gRPC client. Perfect integration required libraries capable of:
We took the best available library and whipped it into shape on our own.
We wrote the shared code for the iOS version with Android integration in mind. The existing features were transferred into the iOS app.
We taught the customer how to use multiplatform code with integrations on both platforms.
Now they can add new features to both platforms at once.
To collaborate with the customer’s team and migrate the existing features into the iOS version without pausing Android development.