Open hrdl-github opened 2 years ago
The copyright notice and scale indicator, as all app buttons are overlays on the map widget. Therefore their renderer is that of the qml engine. The aliasing could differ between the map and those overlays.
Hi @lennonhill, are you using "Tiled rendering" (can be turn on in configuration) or plain rendering? Because with tile rendering tile image may be re-scaled and it is causing such bluring...
I've tried both and I don't really see a difference. I will check the debug log to get information about the detected screen resolution as soon as I've set up a suitable build environment.
I added a patch over libosmscout to quiet debug output. So to enable full debug of osmscout you have to add the following line 81 in MapView.qml (folder controls_509 ou controls_515, depending of qt version you are using):
79 // on azimuth changed
80 compass.polled.connect(function(azimuth, rotation){ mapView.azimuth = azimuth; });
81 mapSettings.debugLevel = 2;
82 }
debugLevel = 2, means debug performance and data. Then you should see in output the dpi etc: Draw: [0.99650 S 16.60925 W - 57.13474 N 20.06398 E] 16x/4 552x1068 127.00000 DPI
Would you mind providing a debug build with this option enabled? I managed to build an apk via act after giving up on getting this to run on Arch Llinux. However, the application quits shortly after launch:
Comparing the release apk (1.8.5) and my apk (https://github.com/janbar/osmin/commit/6b95edbfc6833bd0267ac60fa7d8170cc9324126), it's obvious that some of the shared libraries are missing. When are these supposed to be added? Are they present in your debug builds? I use cmake 3.16 instead of cmake 3.23 and there is also a chance that some of my environment variables differ or are unset.
I have no idea how to build an apk for GrapheneOS. The package should contains all binaries and qml modules too.
Edit: Is a Android package you are using ? If yes then I could provide to you a signed apk with the right debug level flag.
I uploaded the APK 1.8.5 with debug level: https://github.com/janbar/osmin/releases/download/1.8.5/osmin-arm64-v8a-DEBUG-signed.apk
Yes, GrapheneOS also Android-based. Thanks uploading your build. I gave it a try but did not get the expected output via logcat. I get the debug-level "Skip database ..." messages, but nothing more when panning or zooming on the map.
I witness the same behaviour (suboptimal rendering and lack of Draw ... debug messages with the debug build) on another LineageOS 18.1 device.
I checked the logcat, and all debug messages are dropped for a signed build. So we have to build a debug build without signature. In the repository you will find the script "android/linux-build-arm64-qt515.sh" to do it as follows:
First clone the repository of the branch 1.8:
git clone https://github.com/janbar/osmin -b fixes/1.8 git submodule init && git submodule update
You need to install the jdk1.8, android build tools (platform-tools, ndk 21), and the android binaries for Qt5.15: See the content of the build script (linux-build-arm64-qt515.sh) for required version of the ndk, and you could customize the paths depending of your deployment ...
Then build the android APK for debug (the debug build can be achieved by launching the script without argunments):
cd android cp AndroidManifest.xml.in.ndk21 AndroidManifest.xml.in ./linux-build-arm64-qt515.sh
Finally, install the generated APK in your device with "adb install". But first you have to deinstall the signed APK.
I'm still experiencing the same issue, i.e. the application crashes and I see warnings about some modules (e.g. QtQuick.Layouts; see logcat above) not being installed. The files indicated as missing in the diff
above are still missing. I don't know much about Qt development, so I don't know when those modules would be added or which component in the build process would add / register them. My best guess is that there is minor discrepancy between our build environments that causes mine to silently produce faulty builds.
I uploaded the debug APK: https://github.com/janbar/osmin/releases/download/1.8.6/osmin-arm64-FOR_DEBUG_ONLY.apk The relase is 1.8.6 without patch to quiet osmscout debug messages. To instal it you will have to uninstall first the installed APK which is signed.
Thanks for the effort. The log out put is more verbose now, but I am still missing the Draw: ... DPI
outputs. I will try to compile one of the older versions using NDK 18 once I find the time. I suspect that for some reason the packaging goes wrong in my build environment, even though I don't see any relevant difference between your build log and mine.
Is https://github.com/janbar/osmin/commit/73f3df925ab8fb5692daf56b96b809c4bd13eda8 relevant to the debug output I was missing? If so I would try this if you happen to have another debug build.
Hi @hrdl-github , I released the latest android app with a debug logging option. Apk is available at "https://github.com/janbar/osmin/releases/download/1.9.6/osmin-arm64-v8a-with-debug-option-signed.apk". To enable debug logging you have to:
When testing osmin 1.8.4 on a Pixel 4a running GrapheneOS I noticed that the rendering is not as sharp as on my laptop. Especially rendered text and railway connections are affected. The copyright notice and scale indicator are rendered just fine. What assumptions does the renderer make? I did not immediately see a way to enable debug output in libosmscout.
![osmin_2](https://user-images.githubusercontent.com/31923882/163685538-c414a2de-0249-4428-b0bb-6fc0000b0363.png)