Originally created by @Demian98 on GitHub (Mar 20, 2023).
Actual behaviour
I'm downloading all audiobooks I'm listening on the phone. This works well, but after a phone reboot the app just crashes on opening, without doing anything. When starting the app, it loads the main screen and crashed after around 2 seconds. I can start it again and again, it is an infinite loop.
Other people in my family are experiencing the same issue.
The only solution is to reinstall the app. Login again and redownload the audiobooks.
The exception is: SecurityException: Permission Denial: reading.
In the app settings all permissions are still granted, nothing was removed.
Steps to reproduce
Install the app and login.
Download some books and listen to them.
Reboot the phone and open the app.
Expected behaviour
It should not crash and still keep the permissions after reboot of the phone.
Environment data
Audiobookshelf Version:
Android App?
iOS App?
Android Issue
Android version: 10
Device model: SM-N975F
Stock or customized system: Stock
Screenshots
Originally created by @Demian98 on GitHub (Mar 20, 2023).
### Actual behaviour
- I'm downloading all audiobooks I'm listening on the phone. This works well, but after a phone reboot the app just crashes on opening, without doing anything. When starting the app, it loads the main screen and crashed after around 2 seconds. I can start it again and again, it is an infinite loop.
- Other people in my family are experiencing the same issue.
- The only solution is to reinstall the app. Login again and redownload the audiobooks.
- The exception is: SecurityException: Permission Denial: reading.
- In the app settings all permissions are still granted, nothing was removed.
### Steps to reproduce
1. Install the app and login.
2. Download some books and listen to them.
3. Reboot the phone and open the app.
### Expected behaviour
- It should not crash and still keep the permissions after reboot of the phone.
### Environment data
Audiobookshelf Version:
- [x] Android App?
- [ ] iOS App?
#### Android Issue
Android version: 10
Device model: SM-N975F
Stock or customized system: Stock
### Screenshots



adam
added the bug label 2026-04-24 23:26:14 +02:00
Update: This always happens after a reboot of the phone. So it does not happen randomly.
Is there something I can provide to get this fixed?
@Demian98 commented on GitHub (Apr 3, 2023):
Update: This always happens after a reboot of the phone. So it does not happen randomly.
Is there something I can provide to get this fixed?
@advplyr do you think the solution mentioned there could fix this issue as well?
@Demian98 commented on GitHub (Apr 12, 2023):
This sounds very related to the issue I'm experiencing: https://stackoverflow.com/questions/34105318/android-app-losing-use-permissions-after-reboot

@advplyr do you think the solution mentioned there could fix this issue as well?
I'm not sure, I haven't seen that before. This is the same issue as #608 and is specific to Android 10. Maybe also Android 8 & 9 but I haven't gotten any reports for that.
@advplyr commented on GitHub (Apr 12, 2023):
I'm not sure, I haven't seen that before. This is the same issue as #608 and is specific to Android 10. Maybe also Android 8 & 9 but I haven't gotten any reports for that.
OK, something that needs to be fixed. Is there any way how I can help you with this?
To the general approach of offline files on ABS: Why is the user required to choose a specific directory for offline files? Most other app (Spotify, Netflix, and a lot more) are saving offline content into the app data, where the user has no access to.
Here are some benefits of the app data approach:
Easier to understand/use for most end-users, special for the non-technical people.
Most likely easier to handle for the developer, as there should be less security issues (like this one).
Much better for privacy, as the offline files can currently be accessed by all apps with storage permission.
This would fix the issue to link a book which was downloaded by another installation of the app (#653#157), as it can't happen any more.
But the most important benefit for me would be easier handling for non-technical users. Like the most in my family :)
@advplyr It would be great to get your opinion on that :)
@Demian98 commented on GitHub (Apr 13, 2023):
OK, something that needs to be fixed. Is there any way how I can help you with this?
To the general approach of offline files on ABS: Why is the user required to choose a specific directory for offline files? Most other app (Spotify, Netflix, and a lot more) are saving offline content into the app data, where the user has no access to.
Here are some benefits of the app data approach:
- Easier to understand/use for most end-users, special for the non-technical people.
- Most likely easier to handle for the developer, as there should be less security issues (like this one).
- Much better for privacy, as the offline files can currently be accessed by all apps with storage permission.
- This would fix the issue to link a book which was downloaded by another installation of the app (#653 #157), as it can't happen any more.
But the most important benefit for me would be easier handling for non-technical users. Like the most in my family :)
@advplyr It would be great to get your opinion on that :)
We may be able to have a setting for storing in App data.
I took that approach because then it allows the user to manage the files on their device themselves. Some users also download the audio files and use a different app to listen. This was particularly useful in earlier development when the Abs mobile app was still missing a lot of features. I think many users prefer the files be stored where it is accessible to them so if we got rid of it entirely there would be a lot of requests to bring it back I'm sure.
I also had the thought that if we are building the mobile app with all these features for audiobooks then why not also allow it to be a standalone app. This ended up adding more work then I thought (like linking that you mentioned) so I may get rid of this concept.
I think these other media services you mentioned use App data because the content can be DRM protected so they don't want you having access to the files.
Anyway, I think we can try a hybrid approach of allowing users to store library items in app data or shared storage. I'm not sure what the UI/UX would look like for this. Maybe defaulting to app data but adding a prompt for if they want to use shared storage. Since these permission issues happen at Android 10 and below we could force those devices to use app data.
@advplyr commented on GitHub (Apr 13, 2023):
We may be able to have a setting for storing in App data.
I took that approach because then it allows the user to manage the files on their device themselves. Some users also download the audio files and use a different app to listen. This was particularly useful in earlier development when the Abs mobile app was still missing a lot of features. I think many users prefer the files be stored where it is accessible to them so if we got rid of it entirely there would be a lot of requests to bring it back I'm sure.
I also had the thought that if we are building the mobile app with all these features for audiobooks then why not also allow it to be a standalone app. This ended up adding more work then I thought (like linking that you mentioned) so I may get rid of this concept.
I think these other media services you mentioned use App data because the content can be DRM protected so they don't want you having access to the files.
Anyway, I think we can try a hybrid approach of allowing users to store library items in app data or shared storage. I'm not sure what the UI/UX would look like for this. Maybe defaulting to app data but adding a prompt for if they want to use shared storage. Since these permission issues happen at Android 10 and below we could force those devices to use app data.
I'm with you, removing the ability for users to store data in their own paths would cause a lot of complaints, as they are already used to this feature.
I like the idea of a hybrid approach, as it bring the simplicity which is missing currently and all the advanced users are still abele to use the advanced features.
Furthermore, I think I have a good idea for the UI/UX and the concept of how it could work:
This is the current menu for "Local Media". There could be a folder called "App Data" by default, which cannot get deleted.
This would then be available in this usual list to select from, when you download something.
All the users which don't care, can just leaf it like it is and stay with the default folder "App Data". Brings the benefit that they are abele to start downloading after app setup. All the advanced users can still use the existing setup to do own configuration.
Additionally, you also don't need to care about backwards compatibility, as the existing thing stay like they are :)
@Demian98 commented on GitHub (Apr 14, 2023):
I'm with you, removing the ability for users to store data in their own paths would cause a lot of complaints, as they are already used to this feature.
I like the idea of a hybrid approach, as it bring the simplicity which is missing currently and all the advanced users are still abele to use the advanced features.
Furthermore, I think I have a good idea for the UI/UX and the concept of how it could work:
This is the current menu for "Local Media". There could be a folder called "App Data" by default, which cannot get deleted.

This would then be available in this usual list to select from, when you download something.

All the users which don't care, can just leaf it like it is and stay with the default folder "App Data". Brings the benefit that they are abele to start downloading after app setup. All the advanced users can still use the existing setup to do own configuration.
Additionally, you also don't need to care about backwards compatibility, as the existing thing stay like they are :)
Hi @advplyr, I hope you are doing well. Is there already a rough time line, when this will be implemented?
@Demian98 commented on GitHub (Jun 1, 2023):
Hi @advplyr, I hope you are doing well. Is there already a rough time line, when this will be implemented?
I've got this working and tested on a Pixel phone Android 9 & 10. By default all android versions will default to internal storage unless you go into Local Media and add a folder.
For Android 10 and below there will be a message saying downloads will go to internal storage but there is an option to override incase someone on Android 10 does have permissions working.
The "Internal App Storage" folders won't be there until something is downloaded there.
In this case I didn't have any podcast folders setup yet so it defaults to Internal App Storage.
@advplyr commented on GitHub (Jun 4, 2023):
I've got this working and tested on a Pixel phone Android 9 & 10. By default all android versions will default to internal storage unless you go into Local Media and add a folder.
For Android 10 and below there will be a message saying downloads will go to internal storage but there is an option to override incase someone on Android 10 does have permissions working.
The "Internal App Storage" folders won't be there until something is downloaded there.

In this case I didn't have any podcast folders setup yet so it defaults to Internal App Storage.

Hi @advplyr, sounds like it is working well. Thanks a lot for the solution, it will bring much benefit to the audiobookshelf. I can't await to use it on my own :)
@Demian98 commented on GitHub (Jun 5, 2023):
Hi @advplyr, sounds like it is working well. Thanks a lot for the solution, it will bring much benefit to the audiobookshelf. I can't await to use it on my own :)
Came here looking for a fix to this problem and it looks like I just need to wait for the next release. My app crashes trying to access local files after a reboot on Android 9.
@peveleigh commented on GitHub (Jun 5, 2023):
Came here looking for a fix to this problem and it looks like I just need to wait for the next release. My app crashes trying to access local files after a reboot on Android 9.
This issue is not resolved. The problem just occured with me on Samsung Fold 4 with Android 14 and client version: 0.9.73-beta
I've been going alone without issue for months and then Monday the app started crashing on trying to play a downloaded book. Reinstalled the app twice...no luck. Used the process above, made a new folder and gave permissions. Then pointed download to that folder and downloaded again....works. as best I can tell there is no inherent ability to grant permissions to the app for local storage.
Well I am not a programmer I feel like it's possible this app is using a permissions methodology that may have been depreciated by Google and/or Samsung. I know that I've run across permission problems with storage on other apps that are older as well.
Maybe this? https://stackoverflow.com/questions/72948052/android-13-read-external-storage-permission-still-usable
@KellicTiger commented on GitHub (May 15, 2024):
This issue is not resolved. The problem just occured with me on Samsung Fold 4 with Android 14 and client version: 0.9.73-beta
I've been going alone without issue for months and then Monday the app started crashing on trying to play a downloaded book. Reinstalled the app twice...no luck. Used the process above, made a new folder and gave permissions. Then pointed download to that folder and downloaded again....works. as best I can tell there is no inherent ability to grant permissions to the app for local storage.
Well I am not a programmer I feel like it's possible this app is using a permissions methodology that may have been depreciated by Google and/or Samsung. I know that I've run across permission problems with storage on other apps that are older as well.
Maybe this? https://stackoverflow.com/questions/72948052/android-13-read-external-storage-permission-still-usable
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Originally created by @Demian98 on GitHub (Mar 20, 2023).
Actual behaviour
Steps to reproduce
Expected behaviour
Environment data
Audiobookshelf Version:
Android Issue
Android version: 10
Device model: SM-N975F
Stock or customized system: Stock
Screenshots
@Demian98 commented on GitHub (Apr 3, 2023):
Update: This always happens after a reboot of the phone. So it does not happen randomly.
Is there something I can provide to get this fixed?
@Demian98 commented on GitHub (Apr 12, 2023):
This sounds very related to the issue I'm experiencing: https://stackoverflow.com/questions/34105318/android-app-losing-use-permissions-after-reboot
@advplyr do you think the solution mentioned there could fix this issue as well?
@advplyr commented on GitHub (Apr 12, 2023):
I'm not sure, I haven't seen that before. This is the same issue as #608 and is specific to Android 10. Maybe also Android 8 & 9 but I haven't gotten any reports for that.
@Demian98 commented on GitHub (Apr 13, 2023):
OK, something that needs to be fixed. Is there any way how I can help you with this?
To the general approach of offline files on ABS: Why is the user required to choose a specific directory for offline files? Most other app (Spotify, Netflix, and a lot more) are saving offline content into the app data, where the user has no access to.
Here are some benefits of the app data approach:
But the most important benefit for me would be easier handling for non-technical users. Like the most in my family :)
@advplyr It would be great to get your opinion on that :)
@advplyr commented on GitHub (Apr 13, 2023):
We may be able to have a setting for storing in App data.
I took that approach because then it allows the user to manage the files on their device themselves. Some users also download the audio files and use a different app to listen. This was particularly useful in earlier development when the Abs mobile app was still missing a lot of features. I think many users prefer the files be stored where it is accessible to them so if we got rid of it entirely there would be a lot of requests to bring it back I'm sure.
I also had the thought that if we are building the mobile app with all these features for audiobooks then why not also allow it to be a standalone app. This ended up adding more work then I thought (like linking that you mentioned) so I may get rid of this concept.
I think these other media services you mentioned use App data because the content can be DRM protected so they don't want you having access to the files.
Anyway, I think we can try a hybrid approach of allowing users to store library items in app data or shared storage. I'm not sure what the UI/UX would look like for this. Maybe defaulting to app data but adding a prompt for if they want to use shared storage. Since these permission issues happen at Android 10 and below we could force those devices to use app data.
@Demian98 commented on GitHub (Apr 14, 2023):
I'm with you, removing the ability for users to store data in their own paths would cause a lot of complaints, as they are already used to this feature.
I like the idea of a hybrid approach, as it bring the simplicity which is missing currently and all the advanced users are still abele to use the advanced features.
Furthermore, I think I have a good idea for the UI/UX and the concept of how it could work:

This is the current menu for "Local Media". There could be a folder called "App Data" by default, which cannot get deleted.
This would then be available in this usual list to select from, when you download something.

All the users which don't care, can just leaf it like it is and stay with the default folder "App Data". Brings the benefit that they are abele to start downloading after app setup. All the advanced users can still use the existing setup to do own configuration.
Additionally, you also don't need to care about backwards compatibility, as the existing thing stay like they are :)
@advplyr commented on GitHub (Apr 14, 2023):
Yep, I like that
@Demian98 commented on GitHub (Apr 14, 2023):
Great, I can't wait to use the new feature 👍
@Demian98 commented on GitHub (Jun 1, 2023):
Hi @advplyr, I hope you are doing well. Is there already a rough time line, when this will be implemented?
@advplyr commented on GitHub (Jun 1, 2023):
Hey, I don't have a timeline for this
@advplyr commented on GitHub (Jun 4, 2023):
I've got this working and tested on a Pixel phone Android 9 & 10. By default all android versions will default to internal storage unless you go into Local Media and add a folder.
For Android 10 and below there will be a message saying downloads will go to internal storage but there is an option to override incase someone on Android 10 does have permissions working.
The "Internal App Storage" folders won't be there until something is downloaded there.
In this case I didn't have any podcast folders setup yet so it defaults to Internal App Storage.
@Demian98 commented on GitHub (Jun 5, 2023):
Hi @advplyr, sounds like it is working well. Thanks a lot for the solution, it will bring much benefit to the audiobookshelf. I can't await to use it on my own :)
@peveleigh commented on GitHub (Jun 5, 2023):
Came here looking for a fix to this problem and it looks like I just need to wait for the next release. My app crashes trying to access local files after a reboot on Android 9.
@advplyr commented on GitHub (Jun 5, 2023):
Yep I should get a release out this week/weekend sometime.
@advplyr commented on GitHub (Jun 25, 2023):
Added in v0.9.65-beta
@KellicTiger commented on GitHub (May 15, 2024):
This issue is not resolved. The problem just occured with me on Samsung Fold 4 with Android 14 and client version: 0.9.73-beta
I've been going alone without issue for months and then Monday the app started crashing on trying to play a downloaded book. Reinstalled the app twice...no luck. Used the process above, made a new folder and gave permissions. Then pointed download to that folder and downloaded again....works. as best I can tell there is no inherent ability to grant permissions to the app for local storage.
Well I am not a programmer I feel like it's possible this app is using a permissions methodology that may have been depreciated by Google and/or Samsung. I know that I've run across permission problems with storage on other apps that are older as well.
Maybe this? https://stackoverflow.com/questions/72948052/android-13-read-external-storage-permission-still-usable