Ashkan: RRC and TCP tasks can return the amount of data they used. For
RRC, it is an approximate static value, but for TCP, it is real size of
uploaded/downloaded data.
Ashkan: code for listening for connectivity change is added.
Ashkan: data limit options are defined here. They can be changed later.
Ashkan: code that updates datalimit from the preference is added (in
updateFromPreference)
Ashkan: a small function that return the result values hash map is
added. (getResult)
Ashkan: three static values are added: DEFAULT_DATA_MONITOR_PERIOD_HOUR,
PREF_KEY_DATA_LIMIT, PREF_KEY_SELECTED_DATA_LIMIT
Ashkan: main functions and logic of data usage monitoring is defined
here.
Ashkan: other files that modified for data limit.