English

Service Menu app is scary (constantly using GPS/location detection)

If I enable the location (via GPS only) I always get a location icon in the top bar and it always seems to use my location, which if of course worrying for privacy reasons.

However, I’ve noticed what is causing this issue: A preinstalled app called “Service menu”.
That is apparently started on each device start. To see it when you view the last location request, the usual location screen you get does not help (Settings -> Location -> Show all). You also need to go to the three-dots menu there -> “Show system apps”.
You’ll see “Service menu” in that list.

Fortunately, you can go there and stop the invasive app. But what does it actually do?
What is it used for?

One can also see it stores plenty of stuff (35MB is a lot, actually) and may have used some network data? The problem is if you tap on “Mobile data and WiFi” there, you get a screen of “Android system”, so it accumulates all usage, which is not useful at all.

Here it is shown after I’ve stopped it:

6 Likes

interesting, I see similar behavior on my device. I’ve frozen the Service Menu app for now.

I’ve reviewed the code of the Service Menu app to understand what’s going on. This is what is happening:

  1. On every boot, a service “MyService” is started
  2. The service will start gps location updates with an interval of 0,1s
  3. If a location change is detected, the new location will be logged to the android log (inspect with logcat)
  4. After 3 minutes, the gps location updates will be removed

I did not find any indication that the information is uploaded somewhere, it’s just dumped to the android log. Apart from the 3 minute battery drain after a boot and the log pollution, this should not be too much of an issue. However I also see no reason to keep this Service Menu app on my phone.

5 Likes

Thanks for sharing your insights! :slight_smile:
Have you tried removing it via the command line? If so, did you notice any drawbacks?

I disabled the app via TitaniumBackup/OAndBackupX but I assume that disabling via the command line will do the same thing. I did not notice any issues so far. Since I disabled it just recently, I don’t have too much experience without it. On the other hand, the purpose of this app is just to test the device features, so I do not expect any issues poping up.

1 Like

The app itself is 35.66 MB, on my FP3 it stores 37 KB user data and 33 KB cache data.

I don’t have it in the list of recent apps that use the phone’s location and I also don’t have a constant location icon in my task bar.

Other than that: it’s the equivalent of the old FP2 checkup app. See https://support.fairphone.com/hc/en-us/articles/360048775391-Identify-and-solve-issues-with-SIM-card-s-
You can start it and use it for self diagnosis in the dialer app when “calling” *#*#66#*#*

7 Likes

The GPS usage is very subtitle, you will not notice it if you don’t know where to look for it. You can try the following to reproduce:

  1. Reboot your phone and unlock it. Wait a couple of seconds until the full system is up and running.
  2. Notice the GPS icon showing up for 3 minutes right after boot.
  3. Go to Settings -> Location -> Last location requests -> Show all -> 3 dots menu -> show system apps. Now you will be able to see the Service Menu app being listed as accessing your location.

You can also use the console to see the app tracking in action. Do the above and let logcat run in the console:

adb logcat | grep MyService

01-16 22:43:06.925 5882 5882 I MyService: service started
01-16 22:43:06.927 5882 5882 I MyService: initData
01-16 22:43:06.931 5882 5882 W MyService: add locationListener

and after 3 minutes the GPS icon will disappear and you will see

01-16 22:46:07.110 5882 5882 W MyService: remove locationListener

2 Likes

Ah, you are right. I didn’t enable the system apps in the location access view.

If I understood it correctly, the location access happens after a reboot for a limited period of time.

1 Like

I don’t use ‘Location’ so this is interesting. I understand that the Service does a test using the Location at start up and records the data, which is being flagged as a security concern.

It seems that if you want to use Location, without storing real location you can hide it via Setting > System > Advanced > Developer options > Select mock location

As I said i don’t use location so this is guess or hope, maybe someone can clarify your concern on security rather than the fact the Service test app does such at start up if you have Location enabled.

1 Like

Well… thanks for the insight and further look into the issue.

However, I still think this is a thing that should not happen. A constant location icon in Android – for whatever technical reason it may be there – indicates something is always using your location.
That is scary.

Furthermore, it disables the whole feature of the location icon, i.e. showing you when an app is using the location. So when BadTrackingApp uses your location you cannot see that anymore, because you got accustomed to it.
Getting used to seeing such “security indicators” is never a good pattern and should not be encouraged. The location icon should only be shown when I actively use the location for a reason I know (map app etc.).

Just to make sure, when you write “constant” you mean “for about 3 minutes after start” or really constant like in “not ever going away”?

As Ingo says ? . . . and are you sure you do not have an app that is doing it ? and by the way I don’t see any OS or version mentioned, maybe that would help others to emulate the issue.

Yes, in my case it has always be the case. That may be a misjudgment as I did not test it extensively, but whatever may the case even 3min after start is way too much.

Android 10
8901.3.A.0077.20201221

First of all, hi and welcome to the Fairphone forum/Community, @andyflet.

I don’t have that issue.

So disabling GPS works fine for me.
Also maybe better open a new forum thread for such things, unless it is really directly connected to the issue here,

2 Likes