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?
Related Questions in ANDROID
- Creating global Class holder
- Flutter + Dart: Editing name of a tab shows up a black screen
- android-pdf-viewer Received status code 401 from server: Unauthorized
- Sdk 34 WRITE_EXTERNAL_STORAGE not working
- ussd reader in Recket Native module
- Incorrect display of LinearGradientBrush in IOS
- The Binary Version Of its metadata is 1.8.0, expected Version is 1.6.0 build error
- I can't make TextInput to auto expand properly in Android
- Creating multiple instances of a class with different initializing values in Flutter
- How to create a lottie animation
- making android analyze with coverity sast tool
- Flutter plugin development android src not opening after opening example
- I initialize my ViewModel in the Activity with several fragments as tabs, but the fragments(tabs) return null for the updated livedata
- Node.js Server + Socket.IO + Android Mobile Applicatoin XHR Polling Error...?
- How I can use the shared preferences class?
Related Questions in ANDROID-WIFI
- Android Passpoint
- How Android phones get connected WIFI passwords through ADB
- Android Studio - Android 12 wifi icon hided by mobile data when no internet via wifi
- Android 13 version Wifi Network disconnect not working
- Connecting wifi through url
- How to enable/disable auto connect flag in android wifi saved network
- WifiManager.ACTION_PICK_WIFI_NETWORK not working on Android 13
- Android: connection to Wi-Fi seems not to have access to internet
- RTT ranging between WiFi Aware peers not working
- Android: When scanning for Wi-Fi networks using 'wifiManager.scanResults', I am not always able to get a complete list of devices sometimes
- An alternative for WifiManager's startScan() deprecated method on Android 11 and above?
- Is there a way I can restrict my phone to connect to network I set only?
- Android: When scanning for Wi-Fi networks using 'wifiManager.scanResults', I am not always able to obtain a complete list of devices
- How to connect to Wifi network programatically on Android 10 and above?
- Android 13- Unable to connect with WiFi netork after few attempts
Related Questions in ANDROID-6.0-MARSHMALLOW
- Android - Instagram basic display API authorization URLnot loading in Android 6 Marshmallow
- Instagram basic display: Error from android emulator (android 6.0) when trying to login a user
- Issue with Gradient Drawable on Android 6 Marshmallow while using Splash Screen API
- Is there a way to make Azure Application Gateway return all certificates in the chain?
- Android Maps my-location-layer does not show API > Marshmallow
- Download manager does not start the download process in Android 6
- Android Marshmallow API 25 and below - EXTRA_INITIAL_URI not honored therefore unable to open given folder
- App not working on Android 6 with Angular 13
- Camera2: SurfaceTexture buffer size is being overridden
- firebase messaging not working with android version 6 (api 23)
- java.io.FileNotFoundException: /cache/test/test.txt: open failed: EACCES (Permission denied)
- open failed: EACCES (Permission denied) in Android(6.0.1) system application
- Why vector images behave weirdly with API < 24 Android Studio
- Android network-security-config does not work in API 24 version and below
- Method onRequestPermissionsResult not called in no app module
Related Questions in ANDROID-DOZE-AND-STANDBY
- Network access in Android DOZE Mode
- Do a guaranteed execution of code every 15min even in doze mode
- Recording GPS location in the background doesn't work when battery optimizations are enabled on Android
- Keep socket connection open in webview on Android
- Is it possible for my GPS application to continue running in the background while the tablet is on standby?
- Android - Disable Forced DozeMode or AppStandByMode
- App Standby Buckets - What are the restrictions on the "Never" bucket (bucket 50)
- Android Doze mode kills foregreound MediaPlayer service
- How long can an Android app run (that has Battery Optimization turned OFF) in the background before the system kills it?
- How to send emergency alerts from server to android app in realtime when app is closed? Using foreground service or by using other channel?
- How to use wifi in doze mode when app is on battery optimazition whitelist?
- Android service not working when phone is idle / dozing / locked
- Android sensors don't gather data when phone is idle
- Open Battery Optimization activity of specific app in device settings
- Android - How do Music Apps continue to stream on Network even if device is in doze mode?
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?
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)
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: