GrapheneOS Sure. Reboot didn't help. I'm using Organic Maps web release from GitHub with all permissions given.

It doesn't work for me in Vanadium too.

    What quality of life feature! Wasn't able to use my digital id app on my tablet previously since it requires location to activate. Turned on Network location with GOS proxy and it worked like a charm!

    Fantastic work team đź’›

    GrapheneOS I'm having the same issue as @Jdjdoefndbej, my location isn't found indoors, it works fine on Apple devices. I assume that's due to missing cell tower scanning?

      Jdjdoefndbej avenging1683 Need more details on your setups and also logs from the Network Location app via the View logs feature in App info. You can show system apps in Settings > Apps and search for network location to find it.

        Jdjdoefndbej avenging1683 Are you using Battery Saver mode? Try without it. You might need to set Unrestricted battery usage mode for the Network Location app. We can do this ourselves in the next release as a hard-wired exception.

          GrapheneOS

          type: logcat
          osVersion: google/husky/husky:15/AP4A.250205.002/2025022700:user/release-keys
          package: app.grapheneos.networklocation:35, targetSdk 35
          buffers: main,system,crash,events,kernel
          level: verbose
          
          --------- beginning of main
          02-27 23:46:11.453  2040  2262 D WifiPositioningServiceCache: clean() removed 11 items
          02-27 23:48:14.789  2040  4696 D TrafficStats: tagSocket(71) with statsTag=0xffffffff, statsUid=-1
          02-27 23:49:17.757  2040  4696 D TrafficStats: tagSocket(71) with statsTag=0xffffffff, statsUid=-1
          02-27 23:49:53.803  2040  4696 D TrafficStats: tagSocket(71) with statsTag=0xffffffff, statsUid=-1
          02-27 23:50:13.979  2040  4696 D TrafficStats: tagSocket(71) with statsTag=0xffffffff, statsUid=-1
          02-27 23:50:40.479  2040  4696 D TrafficStats: tagSocket(71) with statsTag=0xffffffff, statsUid=-1

          1 user profile, no Play Services, never tried to turn developer options on, Wi-Fi and Bluetooth scanning on, network location through GrapheneOS proxy, SUPL and PSDS Graphene too.

          Jdjdoefndbej

          Do you have Google Play Services installed?

          I'm not an expert and also can't test it right now but this looks to me like Organic Maps requires Google Play Services to determine precise location:

          If your Android device can not determine your location, enable (or disable, if enabled) “Google Play Services” option in the app settings. Note: you can see it only if you have Google Play services installed (enabled) on your Android device. Google play services are used to determine location more precisely, if you experience issues with location accuracy after you disabled the option, turn it on.

          source: https://organicmaps.app/faq/map/can-not-find-position/

          I installed Organic Maps in a profile without Google Play Services and this option does not show up in the app settings.

            Murcielago No, it works fine outside. With GPS I guess. My problem is not limited to Organic Maps, Vanadium can't determine my location too.

              Murcielago Organic Maps uses the fused location provider provided by the OS which transparently supports network location. By default, GrapheneOS reroutes requests to Google Play to the OS location API. Organic Maps will behave the same way with or without their Google location toggle enabled by default unless you disable rerouting requests to the OS.

                The built-in battery optimization we've added for our next release should work as expected with the next OS release to avoid people needing to disable Battery Saver. We just want to fix a regression reported with the Location toggle being disabled first and then we can do another OS release. The current one will remain in Alpha due to needing a couple fixes for network location and a fix for 5G only mode limiting availability to carriers supporting real standalone 5G.

                sustained5314 it scans for Wi-Fi access points, so you need to either keep Wi-Fi on, or turn on always on Wi-Fi scanning which allows apps with the precise location or nearby devices permissions to scan for Wi-Fi access points even when Wi-Fi is off.

                In the near future, cell towers will be supported for getting a rough location estimate and it can use that if Wi-Fi is unavailable.

                First off all, thank you for the amazing update! I have a couple of question regarding some of the changes.

                1. Can you explain exactly what the 5G and 4G-only mode does? I'm not well-versed on this topic.
                2. If you block phone numbers that are not in your contacts, do you still receive a missed conversation notification with that number?

                GrapheneOS got a new log with some strings which I didn't see before. Maybe this could help

                type: logcat
                osVersion: google/husky/husky:15/AP4A.250205.002/2025022700:user/release-keys
                package: app.grapheneos.networklocation:35, targetSdk 35
                buffers: main,system,crash,events,kernel
                level: verbose
                
                --------- beginning of events
                02-28 10:33:50.732  2031  2031 I auditd  : avc=type=1400 audit(0.0:38): avc:  denied  { read } for  comm="networklocation" name="u:object_r:odsign_prop:s0" dev="tmpfs" ino=293 scontext=u:r:platform_app:s0:c512,c768 tcontext=u:object_r:odsign_prop:s0 tclass=file permissive=0 app=app.grapheneos.networklocation
                02-28 10:33:50.736  2031  2031 I auditd  : avc=type=1400 audit(0.0:39): avc:  denied  { getattr } for  comm="networklocation" path="/apex/apex-info-list.xml" dev="tmpfs" ino=91 scontext=u:r:platform_app:s0:c512,c768 tcontext=u:object_r:apex_info_file:s0 tclass=file permissive=0 app=app.grapheneos.networklocation
                02-28 10:33:50.864  2031  2031 I auditd  : avc=type=1400 audit(0.0:43): avc:  denied  { read } for  comm="main" name="u:object_r:build_attestation_prop:s0" dev="tmpfs" ino=114 scontext=u:r:platform_app:s0:c512,c768 tcontext=u:object_r:build_attestation_prop:s0 tclass=file permissive=0 app=app.grapheneos.networklocation
                02-28 10:33:50.864  2031  2031 I auditd  : avc=type=1400 audit(0.0:44): avc:  denied  { read } for  comm="main" name="u:object_r:build_attestation_prop:s0" dev="tmpfs" ino=114 scontext=u:r:platform_app:s0:c512,c768 tcontext=u:object_r:build_attestation_prop:s0 tclass=file permissive=0 app=app.grapheneos.networklocation
                02-28 10:33:50.864  2031  2031 I auditd  : avc=type=1400 audit(0.0:45): avc:  denied  { read } for  comm="main" name="u:object_r:build_attestation_prop:s0" dev="tmpfs" ino=114 scontext=u:r:platform_app:s0:c512,c768 tcontext=u:object_r:build_attestation_prop:s0 tclass=file permissive=0 app=app.grapheneos.networklocation
                02-28 10:33:50.864  2031  2031 I auditd  : avc=type=1400 audit(0.0:47): avc:  denied  { read } for  comm="main" name="u:object_r:build_attestation_prop:s0" dev="tmpfs" ino=114 scontext=u:r:platform_app:s0:c512,c768 tcontext=u:object_r:build_attestation_prop:s0 tclass=file permissive=0 app=app.grapheneos.networklocation
                02-28 10:33:50.864  2031  2031 I auditd  : avc=type=1400 audit(0.0:48): avc:  denied  { read } for  comm="main" name="u:object_r:build_attestation_prop:s0" dev="tmpfs" ino=114 scontext=u:r:platform_app:s0:c512,c768 tcontext=u:object_r:build_attestation_prop:s0 tclass=file permissive=0 app=app.grapheneos.networklocation
                02-28 10:33:50.936  2031  2031 I auditd  : avc=type=1400 audit(0.0:55): avc:  denied  { read } for  comm="binder:2031_2" name="u:object_r:qemu_sf_lcd_density_prop:s0" dev="tmpfs" ino=317 scontext=u:r:platform_app:s0:c512,c768 tcontext=u:object_r:qemu_sf_lcd_density_prop:s0 tclass=file permissive=0 app=app.grapheneos.networklocation
                02-28 10:33:50.936  2031  2031 I auditd  : avc=type=1400 audit(0.0:56): avc:  denied  { read } for  comm="binder:2031_2" name="u:object_r:qemu_sf_lcd_density_prop:s0" dev="tmpfs" ino=317 scontext=u:r:platform_app:s0:c512,c768 tcontext=u:object_r:qemu_sf_lcd_density_prop:s0 tclass=file permissive=0 app=app.grapheneos.networklocation
                --------- beginning of main
                02-28 10:34:18.169  2031  4577 D CompatChangeReporter: Compat change id reported: 312399441; UID 10180; state: ENABLED
                02-28 10:34:18.183  2031  4577 D TrafficStats: tagSocket(71) with statsTag=0xffffffff, statsUid=-1

                GrapheneOS

                We'll provide database downloads to support offline network location.

                Can you already tell in which format the offline database will be available?

                phone-company there are real world instances of tails users who didn't have a VPN being compromised because of correlations between ISP packets sent and data received while using compromused Tor nodes and users who had VPNs prior to connecting to Tor were not compromised in the same way. It might help to not say anything if you have no idea what youre talking about and live in a bubble of righteous ignorance.

                  angela there are real world instances of tails users who didn't have a VPN being compromised because of correlations between ISP packets sent and data received while using compromused Tor nodes and users who had VPNs prior to connecting to Tor were not compromised in the same way.

                  True, but we are talking about sending your true real-life location here. I would strongly advise against mixing real-life activity such as your real-life location with anonymous activity such as what you would typically send through a VPN or Tor. If you use the same VPN for sending your real-life location, and for your anonymous activity, you are revealing to the other end of the VPN exactly where the person doing that anonymous activity is located, ruining all anonymity a VPN alone would give. Same if the location queries are sent out through the same Tor exit as the anonymous traffic, which of course can be prevented, but still.

                  I think there are very good and strong reason to only send queries regarding your real-life location out through the direct internet connection, as your direct internet connection already is approximately tied to your real-life location (if it is a residential connection, or through cellular triangulation). And then only use VPN and Tor for the activity you actually want to keep private, and isolated from real-life location.