Skip to content
HBNut edited this page Dec 9, 2024 · 25 revisions

First time users

  • You should configure the list of search-sites (data sources for searches) to reflect your usual book-genre. Go to "Settings", under the "Search" category, "Websites". Enable/disable and move them up or down the priority list. This can also be adjusted at any time on search-screens from their options-menu.

  • From the same "Websites" screen, tap the settings icon on top of the page, and on the next page choose "Amazon" and update the Amazon URL used for searches to your local/preferred site. Make sure it's a fully valid URL including the https:// part.

  • If you have no need for any specific fields, go to "Settings", scroll down to the "Advanced" section, and select "Field Visibility" and disabled any fields you don't care about.

  • The lending-facility can also be enabled/disabled in the "Advanced" section.

Styles

Styles are a very powerful way of customizing the main book list. Access them from the main menu panel "Booklist Styles". There are two types: "Built-in" and "User-defined". You cannot change a built-in Style. Instead you duplicate it, give it a custom name and edit that copy. There is A LOT of customization possible. I'll add examples here as and when I get specific questions, but the best thing is just to experiment with them. Note that Styles are set for each bookshelf. So you can sort/style each bookshelf individually.

All Styles versus Preferred Styles.

By default no styles are preferred and the Styles option menu (icons in the task-bar of the main screen) will show all of them. Once you add/modify a Style, it will be flagged as preferred. Open the menu panel and select "Booklist Styles" (read the 'tip'). Select or deselect styles (using the check-box on each row) and move them up/down with the "2-bars" icon button. Selected styles are preferred and will show in the options menu providing a shorter/easier menu. The greyed row will be the actual selected Style; which obviously you can change on the book list using the options menu again.

Default Style settings versus User-defined Style settings.

The defaults are used by all built-in Styles and can be modified through "Settings", scroll to the "Style" category, and select "Edit default settings". When you modify a Style, i.e. clone a Style to customize it to your individual taste/needs, you will get a copy of the default settings at that time. In other words, the settings are copied and not inherited. Modifying a default will affect all built-in Styles, but will not affect already created User-defined Styles.

Show a book in the list under all of its authors.

Suppose you added a book with 2 or more authors. By default you will only see the primary author in the book list. Open the menu panel and select "Booklist Styles" (read the 'tip'). If you haven't done this before, the top one is the default "Author, Series". Either long-click or use the menu button on the row (3-dots) and choose 'duplicate'. Modify the name to something that suits you. Click OK and read the 'tip'. Scroll down... to the setting: "Show books with multiple authors" Switch that ON and you get "under each owner". When returning to the book-list, you will now see all authors on individual rows, and that single book will appear once under each.

Track your reading progress / Read|Unread status

By default you can flag books as Read or Unread (and set start/end dates). If you want to keep more details on your reading-progress you can configure individual styles to either present the Read|Unread flag, or to allow you to enter a raw percentage, i.e. 0..100%*, or a percentage based on the current and total pages, e.g. page 56 of 345 . To choose locate the switch under "Track your progress" in the Style settings.

From the main book-list, you use the Book (popup) menu to quickly set Read|Unread while from the Book details you get, depending on the above configuration, access to the detailed reading-progress fields.

Filters

Filters are available from the main book list screen in the options menu. They are set and stored on a Bookshelf, i.o.w. different bookshelves can/will have different filters. They allow you to tune which books will be shown in the current Bookshelf list. You can for example set a filter to only show Books in a specified format (e.g. Hardcovers), books in a specific edition (e.g. First Edition) and many more options. Filters are always combined as a logical AND for now.

FAQ

ISBN versus Barcode

All search-sites support ISBN lookup; some also support 'Barcode'. The latter is specifically for books where the barcode MAY be different from the ISBN (yes, this happens).

Setting read-start and read-end dates.

  • Either on the list or the book details screen (NOT in edit-mode), tap the "read" status button and the book will be marked "read" and the end-date will be 'today'.
  • In edit-mode for a book:
    • tap the "read" status button and the behaviour is as above.
    • tap "read-start-date" to select any date; this does not affect the end-date or the status
    • tap "read-end-date" and select a date range "start -> finish" + the status is set to 'read'.

Using the "Synchronize deleted books" option during import.

Starting in 4.5.0, each time you delete a book its internal unique identifier is stored in a "deleted-books" list. This allows using 2 or more devices to properly synchronize such deletions. But this also means that when you delete a book inadvertently, and restore a previous backup, it will stay deleted even after the import. To prevent this and force the import of such a deleted book, two manual steps are needed:

  • Go to "Settings", scroll to the bottom, and select "Maintenance". From the menu, select "Clear the deleted books history"
  • Go to "Import", select the file/backup you want to import, and make sure to disable "Synchronize deleted books" before starting the import. A future version will simplify this.

Why is there a manual backup option ?

The data itself is backed up by the usual Android & Google services. But the cover images are excluded for the simple reason that they would likely and quickly exceed the default quotas of those backup services. Hence the need for a manual backup. Secondly, it's the easiest way to sync your collection between multiple device; just make a backup, and import it on the other device and vice versa.

Importing from Book Catalogue

Importing a Book Catalogue "bcbk" backup file is supported after converting the "bcbk" file (which is a "tar" archive) to a "zip" file. Just use any app which can open tar files and save zip files. When zipping, make sure the "INFO.xml", "books.csv" and all cover files are at the top level of the "zip" file. Preference and style files cannot be imported; don't add them (they will be ignored).

Network issues

  • This application will make DNS lookups and use http/https to connect to internet sites. If you have any firewall, DNS (e.g. personalDNSfilter) or other blockers make sure to add this app to the permitted list.
  • Slow network access? Adjust time-outs for individual web-sites: "Settings/Websites", and tap the settings button on the top of the screen.

Clearing all data / starting with an empty database

Make sure you close NeverTooManyBooks. Go to the Android system settings, and select "Apps" and navigate to the list of installed apps. Find this app, and open the details (depends on android version and device on how this is called and where exactly it is). It should have a line "Storage", click that and you should see a button "clear data" : this will clear ALL data related to the app. Careful! Then open (or install) again and it should be a clean/new install.

Android permissions.

Other than (obviously) internet access to fetch book-data, you will be prompted to grant the app permission to use the camera which is needed to scan barcodes. This is all most users will need.

When using the lending-functionality, there is an optional permission requested to access your contacts. When lending out a book, you can type in the name of the person you lend the book to, or, when granted permission, you can select from the list of your contacts. Keep in mind this is only used for this purpose, and is entirely optional. Please see the the source code for all details.

NeverTooManyBooks contains ACRA - is this a tracker?

No. The integrated ACRA framework catches unexpected errors, retrieves some context data and log files but in no circumstances sends this data anywhere. Should a fatal error occur, a dialog will be shown prompting you to save the crash-report to your local device storage only. It is then entirely up to the user to 1) log a github issue + 2) inspect or edit the crash-report, and optionally 3) upload the saved crash-report to the github issue.

Generating a debug report

  • Go to "Settings".
  • Scroll to the bottom and pick "Maintenance".
  • Then pick "Debug report".
  • Generally the 'Log files' and 'Settings' should be enabled, but the database options disabled unless requested.
  • Tap "Save" to save it to your storage.
  • Rest assured: Any password you have in there will be *** out; the report is plain text if you want to inspect it first.
  • Next log an issue here in Github (second tab "Issues") and attach that report.

Maintenance (last option in the Settings)

Reset tips

Helpful tips are shown on some screens; you can disable them when read. Choose this option to re-enable all of them.

Cleanup Files

Cleans up some temporary files: logs, upgrade backup files and any orphaned cover images.

Clear the node state for all lists

Each bookshelf/style will store the state of the nodes in the displayed book-list, i.e. which nodes are collapsed or expanded. This option clears/resets that state globally.

Synchronize deleted books

All books will be checked versus the stored identifiers for previously deleted books and removed as needed. This uses the same process as what can be done during an import with the "Synchronize deleted books" option.

Clear the deleted books history

Remove all information about previously deleted books. This will allow the import/restore of a previously deleted book without automatically removing it again.

Rebuild Full Text Search (FTS) data

Not normally needed, it will clear and rebuild the entire local search-data and should only be used if requested to do so in a github issue.

Rebuild the indexes

Not normally needed, it will clear and rebuild the database indexes and should only be used if requested to do so in a github issue.

Bug report

When reporting an issue on github it's recommended to first generate a bug-report with the options "logs" and "preferences". A zip file will be generated which you then should attach to your issue on github.

Calibre

  • By default synchronization with a Calibre Content Server (CCS) is with the main Calibre Library. Simply setup the connection details in settings and map the Library to a Bookshelf. Optionally set a download folder. A menu entry on the main menu provides synchronization control.
  • To install the optional code into CCS which provides Virtual Library support, see Calibre AJAX extension. If your CCS is running on Linux then it's straightforward. If you're using the CCS binary on Windows you will need to either run the development CCS or do the compilation manually. Both are documented but are not suited for casual users. My advice is to run your CCS on a raspberry-pi (or similar NAS devices).

Known issues

  • The node-management, i.e. storing the tree-state of the nodes in the book-list is by design not foolproof. The nodes 'expanded' flag WILL get out of sync with the display from time to time. There are no plans to fix this for now as the foolproof solution would take far to much disk space. This will auto-correct if you tap a row once or twice (or use the "Clear the node state" in the options menu on the bookshelf and styles edit screens.)