Puremaps offline and OSM Scout server



  • @AppLee said in Puremaps offline and OSM Scout server:

    IMO, that something that should be worked on instead of trying to hack around, so if someone can propose something I bet PR will be welcome.

    Porting apps to UT is not trivial and requires some compromises if the app was not intended for UT in the first place.
    The best experience UT can offer is with native apps.

    BTW switching apps is not safe while driving, but neither is looking for a destination. You should stop to start a new route.

    So how and where do I go about proposing something new? Fully functional offline Puremaps with GPS tracking would be a great improvement. I admit here and now that I don't have the faintest idea of the difficulties involved, and I am getting the impression it may not even be possible.

    Ideally I would like to see an Ordnance Survey map application as they are the only maps to show the sort of features I want, but I recognise they would only appeal to those of us in Britain, so there may not be enough demand to make development worthwhile. (For information: OS maps show features such as footpaths, contour lines, field boundaries, archaeological sites and so on, that are of interest to walkers, while roads are merely incidental to the important data.) https://www.ordnancesurvey.co.uk/



  • @cliffcoggin
    You can start there: https://gitlab.com/ubports/core
    I don't have a better pointer but I guess you can find an entry point with the GPS indicator in the top bar.

    I don't really know the specifics, but I guess if someone can come up with a design where GPS data are collected and stored at a given frequency it would be a start.
    Then app developers will need a way to start/stop this collection if they have GPS privileges and a way to access the result.
    The GPS service should also be able to filter data so the only time frame the app will get access to is during the app execution time. So if app A is running and app B is not, running app B later, the latter won't have knowledge of earlier localization data.

    That should work for the GPS service and tracking abilities.
    To get offline data seamlessly it requires two things:

    • The ability to run while asleep
    • The ability to run while in background

    Running in background is made possible with UT Tweak Tool, so this could be integrated.
    Running an app while the phone is in sleep mode is probably more difficult but an app can prevent the phone to go to sleep so maybe that's enough.

    So IMO that's doable, just need someone brave enough to dive and do the heavy lifting.

    People with better knowledge of how the OS works can correct me if I'm wrong. I never dug into the specifics... (yet ?!)



  • @AppLee said in Puremaps offline and OSM Scout server:

    BTW switching apps is not safe while driving, but neither is looking for a destination. You should stop to start a new route.

    Pure Maps routing can speak out vocal instructions so you don't have to look at the phone. And when you get off the route, it it queries the router for a new route without having to touch the phone. No usability or security issues there. I have been using it in SFOS since Pure Maps existed and it works extremely well, on par with proprietary softwares doing this in Android. The only thing missing is real-time traffic.

    No background activity is a key to longer battery life and is also part of the UT experience.

    However great "features" may confinement and background suspension be in theory, as long as they prevent doing what people expect from a phone nowadays (including routing and tracking), I don't think we will be able to convince ordinary folks to switch to UBports to get that user experience. Other phone OSes (SFOS, PureOS) manage these things differently and transparently for the user, and I think UBports should aim to be at least on par with these in terms of real-life user experience. I acknowledge it's probably non trivial and requiring a lot of work, but I would set it a high priority.

    Regarding suspension being good for battery life, I can testify that when my phone ran SFOS (where backgrounded apps are not suspended) I had a noticeably longer battery life than now with UBports, so there is no hard evidence that backgrounded apps (when properly coded) are so detrimental. When I want to use GPS in the background (or asleep), I do expect to have higher battery drain, and accept it. Being forced presently to run GPS-using app with screen on induces obviously a far worse drain.



  • I also think for daily use we need something like OsmAnd with offline maps and navigation, hill shades, contour lines and the OSM Maps with all its details like hiking paths in one app.



  • @herr-b In Pure Maps you can choose among many map backgrounds, including OpenTopoMap that has contour lines, hill shadings and pathes. OpenCycleMap is pretty good too.

    For offline mode, Pure Maps queries data (maps, names, addresses...) on the phone from OSM Scout Server (instead of from network servers), assuming the corresponding data was previously download on the phone. OSM Scout Server presently serves only standard OSM maps but serving other, more detailed maps is being investigated and may not be too far away from becoming a reality.



  • @slowcyclist thanks for the hint with the OpenTopoMap, I saw it, when I once went through the settings but then forgot. If you choose the icon for the map type on the map, it does not show all the possible maps. May be there are to many possibilities to display them all.

    But I would really prefer to use a offline vector map, instead of raster maps, that I can put on the external SD card and have more control over downloads (I don't have flat data package on the phone) and used memory space on the phone.



  • I conducted an experiment today to assess power consumption with Puremaps in offline mode, OSM Scout running without suspension, and Activity Tracker running without suspension and sampling every 20 seconds. On a 40 minute journey the battery dropped from 95% to 49%, approximately 1% power drop per minute. That is clearly not a viable way to use the phone so I shall explore other options.

    AppLee. I'll investigate your pointer more thoroughly, though at first glance I can not see a way forward. I'll report back after more study.



  • A second experiment to day showed the power consumption to be much less if I do not use Activity Tracker.

    With Puremaps in offline mode and OSM Scout prevented from suspension the battery lost 21% over 105 minutes. That equates to 0.2% per minute which, while not good, makes it viable for short journeys.

    I looked further at the Gitlab site and could make no sense of it as there are too many terms and concepts I don't understand, so I shall not pursue the idea of a new suggestion there.



  • Activity Tracking worked in my tests only, if the screen doesn't lock. As soon as the screen locks, Activity Tracker does not work any more. For car driving this is no problem but for hiking this is useless.



  • @herr-b You can allow Activity Tracker to run in background with UT Tweak Tool.



  • Yes, I already allowed Activity Tracker to run in the background with UT Tweak Tool. Today I made tests again, the first test worked, the activity was recorded the whole time. The second test did not work. Track recording was stopped when the screen was locked ... I have to test again to find out what's the reason for this behaviour.



  • I have not read the whole thread. All these limitations will go away some day. OSM Scout Server can be triggered automatically in background when Pure Maps tries to reach it (via a systemd socket). So no need to manually disable app suspension, no need to manually start OSM Scout Server and no need to close it afterwards. All this is already supported by OSM Scout Server and Pure Maps and will be available once we got Systemd in UT.

    The OSM Scout Server will need to remain unconfined unfortunately.


Log in to reply