zamojski / TowerCollector

The OpenCellID and MLS contributor's app.
Mozilla Public License 2.0
227 stars 28 forks source link

Keep measurements locally after upload #17

Open zamojski opened 8 years ago

zamojski commented 8 years ago

Allow me to save my measurements locally, even after uploading to OpenCellid. I would like to have access to all my measurements - I don't like that they get deleted. OpenCellid has been having server problems and I'm unable to down my measurements from their site.

mherrmann3 commented 3 years ago

After using TowerCollector a few times, this a feature I really missed; I desperately searched in the settings for such an option. Note that it would greatly complement the new map feature of TowerCollector to visualize all the areas the user already visited.

zamojski commented 3 years ago

I fully agree, I also miss that feature :) But the problem is the performance when you have over a million of records in the database (at least on my phone), the app interface starts to stutter. In order to fix this issue I would need to rewrite almost 1/4 of the app and basically I don't have time to do it.

However, having the map in place (finally!), it makes more sense to keep the measurements for a longer time. Maybe it could be an option to show/hide them on the map but store in a separate file as the day won't be used anywhere else.

skinkie commented 3 years ago

On #124 someone asks to keep the map map measurements. I think a feature that would be more interesting from a collectors perspective is the age of the available data at a location. Hence having a layer similar to that of MLS showing where data has been collected but augmented for time (older data gets more transparent) would give a good indication where to go to collect something new. This is a completely different approach than the keep local measurements and display it, the layer is obviously what the crowd has collected, and not the individual phone. It would obviously be nice to have this feature available to know what the user has collected theirselves locally, but for that you would need something smart to handle the data. You might be able to tackle that by adding a spatial index that uses a high order segmentation aligned with the tiles.

Lee-Carre commented 2 years ago

@mherrmann3

visualize all the areas the user already visited.

While not exactly what you asked for, this may serve as a workaround: MLS § Map.


@zamojski

the problem is the performance when you have over a million of records in the database

I would need to rewrite almost ¼ of the app

How about using MLS's overlay tiles atop the OSM background, in Tower Collector's map? See the details in #117 (comment).


@skinkie

Aside from age of data (and, if I recall, MLS considers anything older than a year to be stale), other metrics would be

MLS's map shows where any data has been collected, but that could be just a single mode (2G, 3G, 4G).

I would find it helpful to know where is lacking certain types, to strive for completeness.

skinkie commented 2 years ago

@mherrmann3

visualize all the areas the user already visited.

While not exactly what you asked for, this may serve as a workaround: MLS § Map.

Guess what I am using when choosing the routes ;) The deficiency of this map:

  1. it is not precise, you would like to be able to zoom into streets, so it is known what is yet to be surveyed.
  2. neither technology or provider are differentiated, hence if the map would be layers of network operator and technology then I know what to switch my cellphone to.

@skinkie

Aside from age of data (and, if I recall, MLS considers anything older than a year to be stale), other metrics would be

  • completeness (has all possible data been collected? Both type, and density)
  • quality (accuracy)

MLS's map shows where any data has been collected, but the could be just a single mode (2G, 3G, 4G).

I would find it helpful to know where is lacking certain types, to strive for completeness.

Exactly.

Iey4iej3 commented 1 year ago

I fully agree, I also miss that feature :) But the problem is the performance when you have over a million of records in the database (at least on my phone), the app interface starts to stutter. In order to fix this issue I would need to rewrite almost 1/4 of the app and basically I don't have time to do it.

However, having the map in place (finally!), it makes more sense to keep the measurements for a longer time. Maybe it could be an option to show/hide them on the map but store in a separate file as the day won't be used anywhere else.

Is it possible to simply export a backup of collected data? Seemingly this will not affect the performance.