Overview - sociam/xray-archiver GitHub Wiki

Overview

Introduction

X-Ray Archiver is a system that allows you to build a form of app observatory. From the data that this system collates, it is possible to get a sneak-peek into the data sharing practices of mobile applications, as well as build a history of how the Mobile Application landscape changes over time.

Purpose

The system was developed as part of a larger investigation into the theory and practice of Social Machines, and formed part of the wide array of work developed at the University of Oxford arm of SOCIAM. With the network of mobile applications forming the basis of a vast Social Machine, it was of interest to gain insights into the nature and structure of the Mobile Application world.

An emphasis was placed on the identification of 3rd parties that may be present within mobile applications. Given how integral mobile devices are to our everyday lives, it is essential that there is some understanding of how the apps we use fit into the vast networks of advertising, analytics, and other 3rd parties hidden behind the scenes.

Brief Structural Overview

There are 3 main elements to the X-Ray Archiver, The API, the Database, and the actual Archiver itself. Each of the major components of the system may themselves be composed of distinct components.

With the Postgres Database, the API and Archiver essentially sit at opposite sides to each other. The API is implemented using Golang, and has a set of DB methods for querying the DB. The Archiver is implemented using Node JS (APK Analyser uses Golang though).