View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0009808 | MMA | General | public | 2012-10-11 02:44 | 2013-05-01 00:08 |
Reporter | peke | Assigned To | |||
Priority | urgent | Severity | feature | Reproducibility | N/A |
Status | closed | Resolution | fixed | ||
Product Version | 1.0.1 | ||||
Target Version | 1.0.1 | Fixed in Version | 1.0.4 | ||
Summary | 0009808: Ability to exit and close MMA to release it from Memory | ||||
Description | Currently there is no way to Exit and Close MMA now it just minimizes MMA to background when using BACK to exit MMA. When MMA is not playing there should be a way to fully exit and close MMA and release it from memory (not just put it in background). Most of newer apps I have tested uses double BACK Tap to exit and close application (showing "Press back again to exit"), some uses BACK LONG Press to execute same action as pressing on HOME Button | ||||
Tags | No tags attached. | ||||
Fixed in build | 124 | ||||
|
I think that in case MMA doesn't play, simple Back from the Home screen should terminate MM, i.e. no icon would be shown in the tray then. |
|
Well I don't think it is a feature of newer apps. This is a mixing of "Win" functionality to Android's. Android has completely different task management. There is nothing like "exit app". And it is even not recommended to implement it. Because basic entity of Android is Activity. Android stores the states of activities and release it whenever it needs resources. The applications, that has the double back function, use it to prevent accidental "exit" (going out of scope of current app) - not to do a real exit. This is commonly used in explorers and other similar apps. We can implement this functionality. For more information please read this thread: http://stackoverflow.com/questions/2439978/why-dont-android-applications-provide-an-exit-option Or some basics about Android processes and components: http://developer.android.com/guide/components/fundamentals.html http://developer.android.com/guide/components/processes-and-threads.html In our application exists one problem: "When hide the notification?" Fyi there is a playback service on the background. This service is stopped when the playback is paused or stopped for some time (I think it is one minute now) and no MMA activity is visible. After that all other background services are stopped. So neither the notification should be visible. Well I suggest to hide notification when user exits MMA activity and playback is paused or stopped (I think that it is the same thing as Jiri suggests in previous note). But there is a question: What to do if playback is not paused, no MMA activity is visible and user clicks pause button in notification. We can: 1) hide notification immediately after pressing 2) hide notification when playback service is destroyed. I.e. application wasn't used for some time... |
|
Yes, I agree, it's only about when to hide the notification. As for the suggested solutions, I'm fine with either. 1) probably makes most sense to me, because if I exit from the Home screen and nothing is playing, it's quite likely that I'm not gonna use MMA very soon and so it doesn't make much sense to keep it in the tray. Note that currently MMA stays in the tray pretty much indefinitely on my testing devices. |
|
Yes. We agreed on solution when playback was paused. But my question was about different situation: A) Playback is PLAYING, MMA is already closed (or user is in different app), user clicks on PAUSE button in notification bar (only for HC and higher) OR in widget. What to do with notification now ? Both case have some cons 1) Notification will disappear right after user clicks on it. So it disappears even if he touches it accidentally and he cannot see feedback of the action. 2) Notification is going to disappear after some time. So it might look weird for the user that it disappeared without any action. I like 1) little bit more because I think that the processing of our background playback service should be hidden for the user and he shouldn't even know and notice that here is something like service shutdown. Maybe there is a third option: 3) Show toast message that notification will be closed in for example 10 seconds and then hide it. I found one other use case that should be solved: B) User is in different app, Playback had been playing and have just STOPPED (end of playback). I suggest to hide the notification immediately in this case. |
|
To summarize, per IM discussion with Marek: i) After pressing Back from Home screen when there's no playback - hide MM icon immediately. ii) In any other case, when playback stops (end of tracklist, pressing of pause from a widget, etc.) - hide MM icon after some time when the background playback service is terminated. |
|
Marek, are you certain that there are no battery usage implications associated with leaving mma running? Over the past few days I've noticed that even if I'm not doing much MM testing, the Mediaserver process seems to be using a lot of my device's battery. |
|
It is possible now because it is still not implemented this way (notification is not closed and service keeps running). |
|
Fix in build 51. |
|
Martin, can you clarify what the fix is so that we know what to test? |
|
Fix in build 55. In build 55 there are some important changes about that. Current functionality is same as Jiri described by the above (32494). Playback service should stop at the latest one minute after playback is paused and MMA is in background. |
|
Verified 63 |
|
As reported at http://www.mediamonkey.com/forum/viewtopic.php?f=21&t=68827&start=15#p354110 , MMA fails to terminate if playback has been started/paused via the widget. |
|
I can't reproduce this issue, apparently fixed in another issue. |
|
It happen to me again today when testing video playback and UPnP. But it is not every time and when it happen MMA do close after some longer time >10 Min. Left as resolved to see if we receive more feedback |
|
Verified 114, Closing, Speed of close time is depending on Background Tasks priority assigned by system, is there is lots of tasks MMA closes slower (eg. after 5 Min or so). |
|
In recent builds, MMA often fails to terminate and often remains running using large quantities of device memory. Assigning to Peke to investigate specific triggers. |
|
As pointed out in 0009808:0034340 in 8/10 MMA stays open when User either pause or Video is still playing when pressing Home on the device. Note: I'm not observing same issue when Audio is used. MMA normally exits after ~1Min on Nexus 7 (As talked on IM Rusty that was the device he had issues with). |
|
I've been testing this further and have found that on an S3 (JB), playing a single track from a UPnP server and then 'backing' out of MMA causes the MMA process to remain running indefinitely. |
|
Fixed in build 116 |
|
Verified 116 Left resolved for Rusty to confirm |
|
I've tested this with build 118 with Nexus 7, and Galaxy S3, and the bug still occurs though I'm unable to figure out exactly how to reproduce it. Note that when it does occur, it seems that the StorageObserverService is usually running. Any ideas? |
|
@Rusty I would suggest that DDMS debug log would help. To fetch longer log file set filter to "com.ventismedia.android.mediamonkey" and increase log msg count to 500000 in File -> Options -> LogCat -> Maximum Logcat msgs |
|
This seems to be fixed in recent build. |
|
Just Updating to make it more clear. MMA Notification contain STOP button which Automatically close MMA and Free it from memory. |