ALL >> Others >> View Article
How To Do Mobile Apps Data Extraction On Scale?
Reverse Engineering
Now, the question is how can we do that? Assume you need to scrape data from the mobile application, let’s assume that we have got APK of an Android app and we wish to scrape 500,000 data points (UI screens) every day, how can you do that and what will be the cost?
It’s important to find how a client communicates with the servers, which protocol he is using, how they are transferring messages to each other.
As this might look like the finest scalable and affordable solution, it may only provide solutions to one application, so to do if we want to repeat a process again and again with other applications? What if an API gets changed? So, you can see that it’s hard to guess the efforts it should make.
After that, we have used Android Emulator, made installation of the APK, connected that to the proxy and observed the data.
The entire communication was done using HTTPS, after a few hours, we could able to monitor traffic from the clients to the server as well as even capable to simulate calls to a server.
Outcome
Reverse engineering is very easy to start ...
... and looks the most affordable and most scalable way of doing it. However, it may take some long days as well as the development costs are random and you don’t always get the end results.
Selendroid or Appium
With tools like Selendroid or Appium, the scenario is completely different. You can easily write the scenario that you need to test and automatically run that test script again and again. We have decided to use Appium with Android Emulator.
Android emulators are known as impossible tools to deal with for mobile development, though with the release of x86 emulators, things have started to work easily and it feels like working the applications inside laptops run quicker than the physical devices themselves.
Later, we created a Docker container using Ubuntu 16.04, Appium and Android x86 emulator to start the test about how many of those we could run at the same time.
So, assuming that we can utilize 1 CPU for 1 emulator, we will require 700 CPU’s for 700 emulators! It is a huge requirement and very expensive too!
Outcome
Physical hardware always brings good performance however, it’s very hard to deal with on a large scale.
So what to do to avoid the physical hardware management?
Well. We can use the public cloud like AWS. However, when we took this approach to the cloud, things worked completely different. Actually, Linux, Docker, AWS, and Android have worked really well together, however, with an emulator, they’re not. AWS EC2 gives you a Virtual Machine and Android Emulator is a Virtual Machine on top of that. To take benefits from the hardware acceleration while using x86 Android emulator, the host machine needs to reveal this competence, however Amazon, as well as any public clouds, don’t expose this, rather they utilize it for themselves for serving us with the virtual machines, therefore, we were unable to even start an Android x86 emulator!
So How We Have Done That? Well, We have used Ravello.
Ravello Cloud
The Ravello solution has provided nested virtualization or Kernel-based Virtual Machine support on host machine when running on a public cloud.
It has given us the capability to run the x86 Android emulators on the cloud. We have tried it and it worked also, however, in terms of performance, the scrapping has taken 3 times more time compared to physical machines and with the use of more emulators, things have got worse.
Add Comment
Others Articles
1. B.k. Birla College: Excellence In Arts, Science & Commerce EducationAuthor: B.K Birla College
2. The Science Of Fragrance: How Scents Affect Our Mood
Author: Sophia Rodric
3. Corporate Gifting Dubai Guide: Choosing The Right Gifts For Every Occasion | Motivators
Author: Motivators
4. The Identity Behind Every Successful Brand: How A Brand Identity Design Agency Creates Lasting Impressions
Author: Jai
5. Stainless Steel Mig Wire: Features, Uses & Benefits In Modern Welding Industry
Author: Ambica Steels
6. Discover Timeless Elegance At Hazoorilal Legacy The Luxury Jewellery Store In Delhi Redefining Fine Craftsmanship
Author: Hazoorilal Legacy
7. Lift Manufacturers In Delhi, Otis, Kone Lift Repair In Delhi
Author: Recon Elevators Pvt. Ltd.
8. Why Is Royal Residency Dhanaulti Perfect For Mountain Stay?
Author: Royal Residency
9. The Ultimate Guide To Finding The Perfect Artisanal Treats In The Millennium City
Author: The Coco Company
10. La Marguerite En Bijou — Rencontrez Daisy, L'iconique Florale De Ciléa
Author: cileabijoux
11. Professional Event Security Services In Trichy For Weddings, Concerts, Corporate Meetings, And Public Gatherings
Author: massclick
12. Future-proof Management Courses For 2030 Careers
Author: UniversityGuru
13. How To Avoid Moving Scams And Choose Honest Movers In 2026
Author: Onyx B
14. Common Electric Underfloor Heating Repairs And How To Fix Them Safely
Author: dkp ELECTRICS Ltd
15. Why Future Landmark Preservation Requires Long-term Cultural Planning
Author: Andrew






