The purpose of the application is to control the data usage of a phone’s mobile interface. (Not the wifi interface)
The application must be able to run in the background on an Android device, and the user must not be able to close or uninstall the application. The application must auto start when the device is turned on. If at all possible the device must not be rooted.
After a certain amount of data were consumed, the application must prevent the phone from using any further data via the mobile interface. Except for communication with the server. The server will tell the client when to start and stop using data.
Please see attached file for design, wireframes, DB design, etc.