EDIT: HERE Maps plugin started to work again. Qt Map component is still an option.
The various questions are still valid though, if someone does the migration exercise until I do
After the osm plugin in 2021, it seems that itās now HERE that stopped its support for the good old QML Map object.
Last week, my application stopped to show HERE tiles, and when I tried to connect to my HERE account, it simply told me that⦠I didnāt have one? Seems that they silently cleaned up a lot of things
Iāve tried to recreate one HERE account to get API keys, but the problem is elsewhere, map tiles just donāt load anymore.
I guess the best solution is to go with Mapbox through @rinigusās Mapbox GL bindings, right?
But are there any tutorial out there to help porting an app for someone that didnāt follow actively QML development in the past years?
How to install properly the bidings on the Sailfish IDE?
Iāve managed more or less by downloading the rpms from OpenRepos and do:
I can then compile and run apps on the emulator, but the IDE still shows āQML module not found (MapboxMap)ā. Not a blocker, but not very user friendly.
How to migrate from MapQuickItem?
My app currently displays programatically a lot of QML objects on the map with that. With MapboxMap, Iāve managed to display a single position circle by copying the example here, but is there an easier way to display markers/QML objects, text, etcā¦?
How to make the map light? The MapboxMap is very heavy by default, because there are much more details that on PureMaps. How to configure that? What are the best defaults for a light map app?
Re binding in IDE: Never used them as Pure Maps runs on desktop - no need to develop using SFOS IDE. However, I expect that you could add Chum repo and install via that. Do you have Mapbox QML set as a dependency?
Re migration: no idea. API is different and based on drawing objects inside the map. However, it is possible to put components on top and then glue them to the location on a map. See trackLocation in API and its use in example at mapbox-gl-qml/main.qml at master Ā· rinigus/mapbox-gl-qml Ā· GitHub. We used it in WhoGo Maps days, but later switched to inserting POIs into the map instead. I would recommend to read Style Specification | Mapbox GL JS | Mapbox to get inner workings of the map styles and how to add new elements there. Examples on that page are also nice, but its somewhat different API.
Re light map: choose some other map style. See Light Map Style | Mapbox and there are other similar simpler styles by other providers.
Those are definitely all good pointers, but itās really missing a good tutorial that would save hours/days of reading for beginners. I donāt know if Nokia docs were that good, or if my (searching) skills decreased in the past decade (most likely both), but I know that it will take me so much time to gather all the information that my app could stay broken for a while
But Iāll post here my findings when (if) I have some!
The problem is kind of resolved for now. HERE tiles started to download again after a bit more than a week. Letās say they have done a big maintenance on their side (that deleted my account along the way )
Iāll still try to look into migrating at some point, but hopefully itās good for 2023.
is being tracked. Iāve taken a crack at building but itās the whole of QTs location stack and I just didnāt have time. If the qt osm geoservices plugin getās fixed, itāll make it possible to do OSM maps stuff (in QML alone) which takes one quite far (just not on SFOS, sigh).
Biggest problem with HERE is that they no longer allow app_id/app_code way of authorization for new accounts, new accounts are forced into either oauth2 or pure apikey, here plugin cannot be tricked into here.app_code = ā&apiKey=(real key here)ā, no idea how hard it would be to update the here plugin to accept apiKey instead of code/id pair (or if itās even legal based on the qt license hell), but the end url just needs ā?app_code=xyz&app_id=xyzā changed to ā?apiKey=xyzā and we should have a working here plugin for that glorious 1k free tiles and easy qml access
Whaaatt?! You are right!
If I use my newly created appId/apiKey, tiles donāt download.
If I put back my old appId/apiKey (linked to⦠my vanished account)⦠It works
What the hell?! Where did those accounts go? (Iāve recreated one with the same email address)
Iām not so sure it will be good for the whole 2023 now
Nice findings! It should be backportable to Sailfish then
Question could be in the license of backported code. Not sure if it will be already under GPLv3 that Jolla is avoiding. As a result, it could either be incorporated into the base system or not.
Looks like getAuthenticationString needs two lines commented out (say app id part) then authenticationString += ā?app_code=ā; changed to apiKey=. And the conditon of checking if appid is provided removed, of course that would break old workflow uses, wonder if changed plugin like this can be renamed as herenew plugin and shipped separately to not break any base packages, just add new to plugin name in your app and change code/id to apikey and we can have mapping in 2023