I have noticed an issue with my audio streaming app on Android 6.0 devices. Audio streaming is done via HLS over a network connection. Audio playback occurs in a foreground service with an active notification. What I've noticed is that when the app enters doze mode/app standby, the wifi connection is lost and playback pauses. My service is in the foreground and has an active notification which, according to the docs, should qualify my app to not be interrupted. I also acquire and maintain a Wifi Lock. I've read about whitelisting my app, however apps like Spotify don't request any special permissions to avoid this issue. Any thoughts or suggestions?
Doze Mode/App Standby During Audio Playback
2k Views Asked by two1stnamz At
1
There are 1 best solutions below
Related Questions in ANDROID
- Delay in loading Html Page(WebView) from assets folder in real android device
- MPAndroidChart method setWordWrapEnabled() not found
- Designing a 'new post' android activity
- Android :EditText inside ListView always update first item in the listview
- Android: Transferring Data via ContentIntent
- Wrong xml being inflated android
- AsyncTask Class
- Unable to receive extras in Android Intent
- Website zoomed out on Android default browser
- Square FloatingActionButton with Android Design Library
- Google Maps API Re-size
- Push toolbar content below statusbar
- Android FragmentPagerAdapter Circular listview
- Layout not shifting up when keyboard is open
- auDIO_OUTPUT_FLAG_FAST denied by client can't connect to localhost
Related Questions in ANDROID-WIFI
- issues with one to many mobile device file transfer in android using wifi direct
- Sending and recieving data over wifi connection in android programatically
- HTTPS connection on wi-fi enabled Android Wear without phone tethering
- Connect multiple devices in GoPro network
- WiFi direct Ip address
- Get security type from configured network?
- Uniquely identify a particular wifi source using Android devices
- wifi scan is not performed when calling wifi.startScan() outside the MainActivity
- Where are methods responsible for showing WiFi networks' options?
- QR Code Wi-Fi Static IP
- NetworkInfo state for WIFI returns disconnected when no internet connection available android 5.0
- Sending traffic in android app via particular connection
- Android app to receive data sent by ESP-01 8266
- Android Wifi Receiver broadcast late response
- send text from one android device to another through wifi
Related Questions in ANDROID-6.0-MARSHMALLOW
- Android M requesting permissions with permission_groups
- Android M - How to determine if the user checked "Never ask again" when denying my app's runtime permission request?
- INTERNET permissions in Android M
- Android M doze mode and "native" posix socket freezing up
- Design lib - CoordinatorLayout/CollapsingToolbarLayout with GridView/listView
- windowSoftInputMode has no effect in Android M
- Why does Android M's permission manager show Location?
- android-MNC project won’t run on devices prior to API level 'android-MNC'
- Android M Developer Preview - adb devices not working
- How to add Apache HTTP API (legacy) as compile-time dependency to build.grade for Android M?
- Android Auto Backup Conflict Resolution
- Route calls audio to earpiece Android M
- Not all permissions in ACCOUNT permission group granted automatically
- Manifest Merger fails after upgrading to Android M
- Android M Google API's to use Google Maps and other permissions
Related Questions in ANDROID-DOZE-AND-STANDBY
- Does Doze apply to apps with minSdk 21 on Marshmallow devices?
- Doze mode handling
- isIgnoringBatteryOptimizations not working for Samsung
- Manually set a new alarm with setExactAndAllowWhileIdle() each time the alarm goes off: Android
- Battery Optimizations whitelist not preventing Doze from deferring my app
- How long can an Android app run (that has Battery Optimization turned OFF) in the background before the system kills it?
- App Standby Buckets - What are the restrictions on the "Never" bucket (bucket 50)
- Exit android doze mode
- Is it possible for my GPS application to continue running in the background while the tablet is on standby?
- Doze Mode/App Standby During Audio Playback
- Alarm Manager issue in Android 6.0 Doze mode
- Difference between setAndAllowWhileIdle and setExactAndAllowWhileIdle
- Do a guaranteed execution of code every 15min even in doze mode
- How to send emergency alerts from server to android app in realtime when app is closed? Using foreground service or by using other channel?
- Is there any API to know whether APP is in stand by mode?
Trending Questions
- UIImageView Frame Doesn't Reflect Constraints
- Is it possible to use adb commands to click on a view by finding its ID?
- How to create a new web character symbol recognizable by html/javascript?
- Why isn't my CSS3 animation smooth in Google Chrome (but very smooth on other browsers)?
- Heap Gives Page Fault
- Connect ffmpeg to Visual Studio 2008
- Both Object- and ValueAnimator jumps when Duration is set above API LvL 24
- How to avoid default initialization of objects in std::vector?
- second argument of the command line arguments in a format other than char** argv or char* argv[]
- How to improve efficiency of algorithm which generates next lexicographic permutation?
- Navigating to the another actvity app getting crash in android
- How to read the particular message format in android and store in sqlite database?
- Resetting inventory status after order is cancelled
- Efficiently compute powers of X in SSE/AVX
- Insert into an external database using ajax and php : POST 500 (Internal Server Error)
Popular Questions
- How do I undo the most recent local commits in Git?
- How can I remove a specific item from an array in JavaScript?
- How do I delete a Git branch locally and remotely?
- Find all files containing a specific text (string) on Linux?
- How do I revert a Git repository to a previous commit?
- How do I create an HTML button that acts like a link?
- How do I check out a remote Git branch?
- How do I force "git pull" to overwrite local files?
- How do I list all files of a directory?
- How to check whether a string contains a substring in JavaScript?
- How do I redirect to another webpage?
- How can I iterate over rows in a Pandas DataFrame?
- How do I convert a String to an int in Java?
- Does Python have a string 'contains' substring method?
- How do I check if a string contains a specific word?
The recommended solution is to have separate processes, one for audio playback and for the UI. See this long thread for lots of details
Here's the relevant section from Ms Hackborn: