This object is in archive! 

Locus 3.5: No widget on S2/Android 4.1

Ingo Rau shared this problem 9 years ago
Solved

I updated to 3.5.1, and the new widget works well on my S4 (Android 4.2), but on my S2 (Android 4.1.2) it doesn't even show up in the list of available widgets.

Is that a technical restriction or a bug?


Thanx for looking into that!

Replies (9)

photo
1

Hmm you do not even see it in the list??


I received today a bug report, that widget is not working correctly on 2x devices (widget was visible, but when added to screen, it just appear as empty "Not working" view). This issue is fixed and will work in next version.


Your case is anyway different. Fact, that widget is not visible in list of widgets may have two sources as I know.


1. you do not have installed Locus Pro

2. you have installed Locus Pro, but app is placed on SD card (which sometimes cause troubles). So please check settings of Locus in Application manager in your device, if Locus is installed in internal memory and not on SD card. This will be probably your case.

photo
1

Thanx a lot, you were absolutely right: It was moved to the SD card, which I had totally forgotten... Moved it back, now it works.


While we're at the S2, I have another strange behaviour:

I have a personal map with downloaded tiles up to level 19, but not everywhere. When I zoom to Level 19 where there are no tiles, on my S4 the last existing level is just enlarged. On my S2, an empty (checkered) screen appears. I initially setup my S2 by importing settings saved on the S4, so I doubt it's a wrong setting in Locus. Could that be a bug?

photo
1

So glad first problem is solved.


About second issue - old tiles are rescaled only when they were previously loaded. So in case you zoom from zoom 18, where map is visible, to level 19, then Locus firstly rescale already loaded tiles and then start loading new. If you zoom from 20, where are no tiles, to 19, then no extra tiles will be loaded, so in your case, you'll still see empty map.


May this be your case?

photo
1

I don't think so - I know the behaviour you're talking about, and that happens on both phones.

But what I'm talking is only on S2. I tried this several times with both phones:

- Startup with a zoom level that's in the map -> everything displayed

- Zoom in up to non-existing level

- On S4, last loaded level is enlarged, on S2, whole screen gets empty (with checkers)

I know, it's not a big deal, just slightly annoying and not really understandable, as it works perfect on S4. I just thought there might be a setting I overlooked, perhaps something in the config.cfg?

photo
1

Oki, I'm checking code for a various settings. There are some optimizations that should disable this effect in some cases, when performance is more important. So what should have effect


- map you use (online, ...)

- older devices with 2.X Android (not your case)

- low amount of RAM memory (not your case)

- enabled shading (in this case, enabled shading also enable this effect, not opposite)


So, probably shading is source of this "issue"?

photo
1

Well, I assume it can online happen with personal (offline) maps, because only they can have "missing" zoom levels in some places. I mean, as far as I understand, every map has a zoom level range from lowest to highest. Now the highest is obviously determined by the highest overall anywhere in the db. Now when you create a map with Locus by downloading and later add higher levels in some places but not all, the highest level is changed, but not available everywhere. Only there this happens.

Just to cleat that up again.

Anyway, low memory might be a case, as the S2 has only 1G and that is even without running apps at least half filled. However, enlarging loaded tiles when a map doesn't have higher zoom levels overall works fine. Is there any way to determine if Locus decided that RAM is not enough?

About Shading:

The option Map - Advanced > Shading maps is disabled, so it shouldn't be that.

photo
1

Memory is not a problem as it is related to 2.X devices only.


Ah I've got it ... complicated optimization :).


There are two methods how Locus load tiles from DB. Direct vs Lazy-loading.


Direct method load tiles immediately when it is required. This happen on all devices with resolution smaller then 1440x1080. In cases, shading is enabled, this method is automatically switched to lazy-loading.


Lazy-loading means, that locus firstly display empty map and later tries to load required tiles. This happen on big devices where loading all tiles at once should take too long.


And finally - direct download disable this "enlarge" effect, where lazy-loading enable it.

photo
1

Yeah, I can confirm that. I enabled shading, and then the zooming worked as expected/wanted.

Of course, I don't want/need shading here, so is there any way around it, i.e. force lazy-loading on my S2?

photo
1

Currently no, no such settings exists.


This re-scale is extra load for CPU. In case of "direct" download, this rescale is not needed because Locus immediately loads new map.


In this case, it's quite special because you have an map that has map for certain zoom level, but not all tiles are available. If there should be possibility to enable this effect in all cases, then most of time, your device will do some extra bitmap rescaling even in case, this is not needed.


So generally, I think that such settings do not make sense, sorry.

photo
1

OK. As I said, it's only an annoyance, but I understand your position. But if you ever happen to put a setting into the config.cfg, I wouldn't be angry ;)

photo
1

Understand :). I rather hope that during some changes, I'll create a system where Locus will rescale images from lower zoom levels automatically without need for some special parameter.

photo
1

That would be the perfect solution, true. Probably not that easy, though...

photo
1

FYI: I just entered problem http://help.locusmap.eu/topic/vector-maps-cut-off-names which is also different on S2 vs. S4 (this time, S4 is "wrong"), so it might also have to do with direct vs. lazy-loading...

photo
1

I think it has nothing to do with problem with type of loading as vector maps are always in all cases loaded by "lazy-load" method. To get same results, please check if you have same size of texts, you use exactly same map file and same theme. I'm sure, somewhere will be any difference.


Anyway texts in vector maps are quite old problem in Locus, so I'm aware that there is something "wrong" with labels at all.

Replies have been locked on this page!