Open Bug 1003598 Opened 6 years ago Updated 4 years ago

Settings > Mozilla > Mozilla Location Service needs a setting for Cellular Data Uploading enable/disable

Categories

(Firefox for Android :: Settings and Preferences, defect)

All
Android
defect
Not set

Tracking

()

People

(Reporter: garvan, Unassigned)

References

(Blocks 1 open bug)

Details

(Whiteboard: geolocation, mozilla location services)

For those who have enabled the 'Mozilla Location Service' setting, we will be collecting data and uploading periodically to our service.

Due to the costs of cell data connections, we would enable WiFi uploading only by default. However, some users do not have WiFi, and have cell data plans that have ample data limits for the amount of data we are uploading.

For a more background on this, allow myself to quote myself from bug 1001211:

A quick investigation shows that a single stumble is 1 kbyte in size, which on MozStumbler we gzip to 1/4 of the size (worst case from what I see). If if someone is running a mapping app:
250 bytes * 30 collections/min * 60 mins = 450 kbytes an hour. A heavier user, 2-3 hours of map usage, which would be 1 MB per day. 
In Canada, data costs are commonly $.1 / MB, or >$20 / MB roaming (add reference). We could potentially cost a user $600 in a month.
I need to do a more thorough investigation on all these numbers of course.

I think it is clear we need to have a pref to have the user optionally enable Cellular data uploading. I am sure getting an additional pref put in is a difficult endeavor, UX folk don't take that stuff lightly (nor should they).
The reason we must have cellular upload was made clear to me by this MozStumbler post:
https://github.com/mozilla/MozStumbler/issues/555
Cellular data might be primarily how users in India connect to the internet, and have inexpensive data plans to do so.
Version: Firefox 32 → Trunk
See also Bug 895991, Bug 802749. We should ideally be solving this for all of our background services.
Blocks: 1027078
Blocks: 1032506
Component: General → Settings and Preferences
Instead of adding a setting for background data uploading, maybe we could delay data uploads until the user is running Fennec and then use whatever network they're on (Wi-Fi or cell)? The current network is presumably one they don't mind using for data transmission.
This is partially implemented. The stumbler code only uploads after Fennec starts/resumes (a few seconds after actually), or when Fennec pauses. 
I am on wifi often enough that I would prefer the stumbler to wait until I have a wifi connection rather than use my cell data.
However, we have the use case of people who are never connected to wifi. We could detect that the user has not connected to wifi for n days, then switch to cell uploads. If the user connects to wifi, switch back to wifi-only, until the condition is met again. The stumbler only stores 250KB of data, so there is no concern of a big backlog of data suddenly getting uploaded. (If this backlog of 250KB is a concern, we could delete it when we auto-switch to the 'allow cell network' mode.
I still like this idea, however most users are only uploading 10-20KB a day, so this would be solving an edge case problem.
I am concerned if we add user UI complexity to stumbling, we might see less adoption, because ATM, adoption rates are very high.
Assignee: garvankeeley+bmo → nobody
You need to log in before you can comment on or make changes to this bug.