Year2015 – 2016
RoleMobile App Development, App Crawler, Deep Linking
TechnologyAndroid, iOS, Xpose framework for Android, Cydia framework for IOS, Node.js
App automation and ontology assisted content acquisition
Mobile app deep linking is a hot trend in making apps visible to users. APIs to hook into apps are catching on, but doing it for apps without assistance is a challenge. We took on the challenge for one of our clients by developing app automation and ontology assisted content acquisition tools which, in effect, permit us to “crawl” apps. For this, Android apps need to be run in emulators to access the data that they present to the user. The various states of an app need to be mapped out prior to crawling the apps.
Connecting search results to mobile app using deep linking techniques
We built an app crawler and an interface to the crawler for recording typical patterns of navigating an app and annotating the presented information using an ontology developed for the purpose. Using the interface, a crawling specification is derived which enables repeated crawls of the app. Our app crawler runs as a service on the device and orchestrates the UI of the controlled apps. The crawler then scrapes the screens for data by hooking into Android frameworks. To enable live app search, we’re working on running managed emulator farms.
Home-grown tools help reduce app onboarding time
While the Android SDK provides the “intent” mechanism for describing parts of an app’s functionality that can be invoked from outside, few apps make crucial functionality accessible via intents. We incorporated static analysis of APK files as well as dynamic annotations using our tool to enable an app to be crawled for data on behalf of a user. We also reduced app onboarding time using homegrown systems and tools.