Viewing 10 posts - 1 through 10 (of 16 total)
  • Author
    Posts
  • #3553
    navnerd
    Participant

    DMD2 Version 3.00007 unfortunately stops recording GPX files if the user accepts a phone call. Also, when exiting DMD2 (intentionally or by crash) GPX recording is stopped. It starts again after finishing the call or restarting DMD2. In both cases, the GPX track does not contain the data points that should have been recorded during the call or during DMD was exit. The last point recorded and first new point recorded are simply connected by a straight line.

    Older versions of DMD2 (2.7x) always continued writing GPX files, even after DMD2 crashed or exiting it intentionally. That is the preferred behavior, since otherwise often (parts of) the track data gets lost.

    Device: SAMSUNG Galaxy Note 20 Ultra 5G
    Android 13, One UI 5.1

     

    #3624
    navnerd
    Participant

    Today I checked with 3.00013: This problem also appears if I simply switch off the screen. That gave me the idea that the app might simply have not enough permissions. Indeed, I found out that on my device DMD2 just has the permission to get access to the location if the app is in use. In opposite to this, DMD1 is allowed to have access to the location always, that’s of course why there this problem does not exist.

    However, for any reason DMD2 just offers the following permissons for location:

    1) Just during app usage

    2) Ask every time

    3) not allowed

    “Always” is not offered (Device SAMSUNG Galaxy Note 20, Android 13, One UI 5.1). I just checked that even after reinstallation, I can’t set a permission “always”.

    John, is this intended? Could you comment? I found the permission “always” very helpful because often I like DMD to record GPX files when walking with the phone in my pocket and the screen switched off.

    #3625
    johnkeel
    Keymaster

    Hello

    DMD Location Service (which is what takes care of recording GPX also will be stopped under these conditions):
    – Screen gets turned off
    – DMD2 is closed (not the same as when you simply move to another app, recording continues if you open another app without closing DMD2)
    – DMD2 cannot continue to record if it crashes, not possible on any version of DMD2

    The “Always” location permission is not good anymore, most devices will kill background services for battery management. Only solution is foreground service (with a notification) and while screen is turned on.

    So basically to keep recording either leave DMD2 in foreground or open any other app without closing DMD2 and without turning off the screen.

    The only thing that makes no sense to me is it stopping recording because you got a call, i will need to do some testing about this.

    DMD2 Project Manager & Lead Developer
    Contribute to DMD2 Translations | Buy Me a Coffee

    #3630
    navnerd
    Participant

    Hi John,

    thanks for the info! My thoughts:

    1) Samsung devices allow to switch off battery management for individual apps. I just found out that this was set to “optimized” (acc. to my usage behavior) and not to “not restricted” for DMD2 (third option is “restricted”). I now changed the setting and I’ll test soon and let you know if this setting solves the problem for phone calls.

    2) When accepting an incoming phone call with the Samsung phone during a DMD2 GPX recording session, the screen automatically switches to the phone app (of course). Shortly after accepting the call, the phone screen gets automatically switched off (probably by the phone app itself). It seems this also stops the DMD2 GPX recorder. I have set the display time-out to 10 minutes, but this does not fix the issue since the screen gets switched off eventhough during phone app usage. I guess the problem is Samsung-specific. If someone in the forum reads this, may be he/she can add similar experiences with other devices if experienced.

    May be I should add that this problem with my Samsung device happens during usage in a car when the phone is connected via Bluetooth to the car infotainment system. Don’t know if this has an influence. I don’t use the Samsung phone on my motorcycle. For motorcycle use, I use a special, extra-robust outdoor phone. Until now I couldn’t test the behavior of that phone since it is too cold, wet and salty on the streets to ride motorcycle. I’m becoming old… 😉

    Running DMD2 in the foreground with screen switched on of course is difficult e.g. during hiking with the phone in the pocket. Of course you could lock the screen with the DMD2 functionality, but even with dimming the screen brightness, the device then needs significant more power than with the screen switched off. I therefore would really prefer that the location setting “always” would be enabled again like in DMD1.

    Coming back to you as soon as I find out something new.

     

    #3632
    navnerd
    Participant

    Hi John,

    I have bad news: The problem with interrupted GPX file recordings during using the phone app persists even though I put battery management for DMD2 to “not restricted”.

    Furthermore, I found out that the GPX file recordings stop every time I open another app, even though I did not quit DMD2 and let it run!!! As long as the other app is in the foreground (means I do not directly see any DMD view), there is no GPX file recording. Don’t know if this is a SAMSUNG specific problem. In any case, the issue has nothing to do with my first guess that the phone app switches off the screen automatically.

    I just cross checked with DMD1 Version 6.38 (which has permisson to access the location service always!) and there the GPX file recording runs absolutely fine, independently which other app I use in the foreground. I can even switch off the phone screen and GPX file recording continues.

    John, it looks for me that at least for SAMSUNG phones the best solution might be to allow putting the location service to “always”.

    #3634
    Severian
    Participant

    I already raised this question some time ago and John answered that there is no point in keeping location service on (and record gpx) when, let’s say, screen is off, since majority of hw will kill the service. Fair enough, this is the decision of the developer.

    I only can say that, at least to me, to record gpx while screen is off is crucial when I don’t have external power for the phone (on my dirt bike) and battery, late in the day, is running low. In these circumstances, sometimes I know where I am going and don’t need to keep the screen on, but still I want to record my track (I turn off the display, to preserve battery and I am still recording in the background).

    Now I am using additional little app just for that in parallel, which is not elegant, but still is a solution. I would prefer that dmd2 records in the background, though. But, ultimetely I respect the decision of the developer.

    #3636
    navnerd
    Participant

    Yes, of course, I agree, it’s a developer’s decision. My workaround currently is using DMD1 for GPX recording if the screen is off and the phone in my pocket. That does the job very well.

    However, we need a solution that DMD2 does not stop recording GPX files as soon as another app becomes active and uses the screen, especially the phone app, since you cant’t simply prevent that from happening (at least for a very short time) if you need online data somewhere. Therfore, for very valuable recordings I can only do once for any reason at the moment I would use DMD1 in the background since there I do not have those interaction problems.

    If this is only a Samsung phone specific problem, it may be that always allowing the location service only for Samsung devices is the simplest solution, since (like written above) in the Samsung OneUI you can deactivate power management for individual apps. Not any problem with that in DMD1 or other apps where I need that.

    But I’m no Android app developer so I can’t judge about the effort and alternatives. I’m sure John finds a good solution.

    I’ll test if my motorcycle device, a robust Blackview BV9800Pro, does not show this problem. Unlike Samsung with the OneUI, it seems to use a very “naked” Android. I’ll try during the next days and post the results here…

    #3637
    Severian
    Participant

    I fully agree with you. To me too, dmd2 is simply not to be trusted with recording, still. Too many variables, that can and usually will go wrong (and one loose part of the track, or worse). Maybe it will change, who knows, we are on beta land still… 🙂

     

    And no, it’s not only on Samsung.

    #3675
    johnkeel
    Keymaster

    Yes, of course, I agree, it’s a developer’s decision. My workaround currently is using DMD1 for GPX recording if the screen is off and the phone in my pocket. That does the job very well. However, we need a solution that DMD2 does not stop recording GPX files as soon as another app becomes active and uses the screen, especially the phone app, since you cant’t simply prevent that from happening (at least for a very short time) if you need online data somewhere. Therfore, for very valuable recordings I can only do once for any reason at the moment I would use DMD1 in the background since there I do not have those interaction problems. If this is only a Samsung phone specific problem, it may be that always allowing the location service only for Samsung devices is the simplest solution, since (like written above) in the Samsung OneUI you can deactivate power management for individual apps. Not any problem with that in DMD1 or other apps where I need that. But I’m no Android app developer so I can’t judge about the effort and alternatives. I’m sure John finds a good solution. I’ll test if my motorcycle device, a robust Blackview BV9800Pro, does not show this problem. Unlike Samsung with the OneUI, it seems to use a very “naked” Android. I’ll try during the next days and post the results here…

    The issue you been reporting are not present on the devices i use.
    I do have a Samsung S22 here which i can use to test, im starting to think if this might be a case where the phone app flips the screen orientation and causes a crash. A simple test you can use is test if it also happens when DMD2 is running in Portrait mode.
    I will do some testing on this.

    DMD2 Project Manager & Lead Developer
    Contribute to DMD2 Translations | Buy Me a Coffee

    #3676
    johnkeel
    Keymaster

    Samsung S22 Ultra Testing One:

    DMD in Portrait Mode.
    Recording
    Took a call
    Accepted it and call app took full screen
    DMD2 recorded in background
    Screen was on the full time

    Moving on to next test

    DMD2 Project Manager & Lead Developer
    Contribute to DMD2 Translations | Buy Me a Coffee

Viewing 10 posts - 1 through 10 (of 16 total)
  • You must be logged in to reply to this topic.