Comments (6)
Just small progress update. Progress has been bit slow as I don't have previous experience from android and android auto development. I managed to get android auto browsing hierarchy for library and series to work. It works, but needs caching and sorting by title/name for every view. When I get those things done it is quick to add collections.
About those large lists. It seems that there is no technical limit on android side, but for people who have very large libraries load times might be bit long, but we will see. If that is case then we just add some kind of paging system.
from audiobookshelf-app.
I have started implementing this. Way how I am planning to do this is making following structure under libraries option:
- Library
- List of authors
- Series
- Books
- Non series books
- Series
- List of authors
- Series
- List of series
- Books
- List of series
- Collections
- List of collections
- Books
- List of collections
So first you select which library you want to use and then navigate with that hierarchy. I am not sure does android auto support sorting by anything else than name, but we will see.
from audiobookshelf-app.
So first you select which library you want to use and then navigate with that hierarchy. I am not sure does android auto support sorting by anything else than name, but we will see.
If you want to see a possible implementation, look at Listen Audiobook player - I worked with the dev to have a fully browsable library (that simply follows the file system structure in that case) implemented into the app a while ago. So at least there is no technical limit that prohibits you from showing large lists or anything like that that I could see..
As for how you propose, that sounds great to me as it would give you full flexibility browsing your library.
While you're at it, could you also look into the adjacent topic of the download function losing all folder structure? It would be great if the app would support sort of an "offline" mode where we only see the content we have downloaded locally (but with the same structure as in online, so library/series/collections) - not every country has good internet throughout, especially when driving.
That had been my main use case before I switched to Audiobookshelf - I used a booksonic server to manage my books and download them to the phone, but since the app was near useless in android auto (didn't work offline at all), I only used it to download the books (which neatly kept the folder structure of author\series\book intact) and then pointed Listen Audiobook player to the same folder for actual playback on the phone/in the car.
from audiobookshelf-app.
About those large lists. It seems that there is no technical limit on android side, but for people who have very large libraries load times might be bit long, but we will see. If that is case then we just add some kind of paging system.
I think also as you said before, maybe the answer here would be local caching of the directory structure (not the metadata itself), so that browsing the trees happens "offline" (with a sync of course while online). Metadata loading for selected books from the online source (or a downloaded copy) would then be quite fast in comparison.
Also, a suggestion from my side would be to also have a toggle for an offline mode in which only the locally downloaded library items are taken into consideration - this could make browsing in the car a lot easier too if you are the type to keep local copies of books due to bad connectivity (like I am).
At any rate, I really appreciate you working on this and look forward to being able to try it out :)
from audiobookshelf-app.
It seems that there is limit on android auto side for how many things your list can contain. Over 1000 items will prevent list loading. So I need to implement paging system for authors and series. I am thinking to add page changing entries to top of list and next page entry at bottom. Does that sound like good idea or does somebody have better idea?
Entries could be like:
Page 1 | A -H
Page 2 | H - O
Page 3 | O -Z
from audiobookshelf-app.
It seems that there is limit on android auto side for how many things your list can contain. Over 1000 items will prevent list loading. So I need to implement paging system for authors and series. I am thinking to add page changing entries to top of list and next page entry at bottom. Does that sound like good idea or does somebody have better idea?
Entries could be like: Page 1 | A -H Page 2 | H - O Page 3 | O -Z
I wouldn't use it as strict as this but just use a fixed paging size of maybe 50 to 100 entries per page - maybe even adding an #, A - Z before as a downselect (especially for Authors and Series) and then page the results by 50..
from audiobookshelf-app.
Related Issues (20)
- [Enhancement]: Send Ebook to... on iOS app HOT 3
- Add ability to open URLs found in book descriptions in browser HOT 2
- [Bug]: Swiping through pages gets stuck HOT 1
- [Enhancement]: Support Random library sorting HOT 1
- [Bug]: App crashes on playback VERSION 0.9.75 HOT 3
- [Enhancement]: Show playback in Media Output "drawer" HOT 3
- [Bug]: Listening session isn't tracking correctly HOT 7
- [Bug]: Android Auto stuck on "Downloads" screen with no option to go back. HOT 3
- [Enhancement]: Add option for downloading book with author name as LASTNAME, FIRSTNAME HOT 1
- [Bug]: Audiobookshelf has expired - iOS HOT 2
- [Enhancement]: Add "spinning dots" when accessing Playlists (and maybe Collections)
- [Enhancement]: Add ability to reorder Playlists (and maybe Collections) in app
- [Enhancement]: In Playlists/Collection, Green "Play" button should be renamed to "Play Queue" or similar wording
- [Enhancement]: long press on books to bring up context menu HOT 1
- [Bug]: Audiobook & Podcast Position Not Syncing/Saving
- [Bug]: Incorrect stats on Android
- [Enhancement]: Ability to auto delete audiobooks when finished HOT 1
- [Bug]: Android app broken when library served via reverse proxy URL HOT 6
- [Enhancement]: Add a Menu button → Book Progress for recently completed books and in progress books
- [Bug]: Can't fastforward .aac file on Android HOT 3
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from audiobookshelf-app.