Anyone knows where the files/databases are for the library to use, e.g., sorting files for recent, author and title, as well as for shelves. It seems the library module from time to time doesn't sort correctly, after adding new books. Sometimes, a book from search is not placed in the 1st in the library ( for most recent order ). So I guess there must be something wrong in related files. Any tips are appreciated.
smjohn1 said:
Anyone knows where the files/databases are for the library to use, e.g., sorting files for recent, author and title, as well as for shelves. It seems the library module from time to time doesn't sort correctly, after adding new books. Sometimes, a book from search is not placed in the 1st in the library ( for most recent order ). So I guess there must be something wrong in related files. Any tips are appreciated.
Click to expand...
Click to collapse
AFAIK there is nothing specifically for the Library app other than an xml file (/data/data/com.bn.nook.library/shared_prefs.xml) which I imagine is supposed to control how the various library options display when the library is accessed. I've never had any luck with changing the settings (which are obfuscated anyway) as I would like the library to open a certain way but it insists on reverting to something else no matter how many times I set it.
As for databases, there are two associated with the Reader app (/data/data/com.bn.nook.reader.activites/databases/lastreadingpoint.db and /readerlocal.db). Historically there have been issues with the databases becoming garbled and there are a couple of postings somewhere in the forum with sqlite sequences for clearing out the dross and starting over. I'll see if I can scare those up but you should search also. And you'll need a sqlite database viewer if you want to examine the databases on your PC to see what's there.
Edit: This is the main thread I was remembering: https://forum.xda-developers.com/t/solved-on-the-problem-of-broken-bookmarks.1467429/
nmyshkin said:
AFAIK there is nothing specifically for the Library app other than an xml file (/data/data/com.bn.nook.library/shared_prefs.xml) which I imagine is supposed to control how the various library options display when the library is accessed. I've never had any luck with changing the settings (which are obfuscated anyway) as I would like the library to open a certain way but it insists on reverting to something else no matter how many times I set it.
As for databases, there are two associated with the Reader app (/data/data/com.bn.nook.reader.activites/databases/lastreadingpoint.db and /readerlocal.db). Historically there have been issues with the databases becoming garbled and there are a couple of postings somewhere in the forum with sqlite sequences for clearing out the dross and starting over. I'll see if I can scare those up but you should search also. And you'll need a sqlite database viewer if you want to examine the databases on your PC to see what's there.
Edit: This is the main thread I was remembering: https://forum.xda-developers.com/t/solved-on-the-problem-of-broken-bookmarks.1467429/
Click to expand...
Click to collapse
Thx, I will dig a bit. Strange thing is just read books from search don't appear in library's beginning at all. On the other hand, books read from library do change order in the library. Besides database, any other possible modules that would such problems?
smjohn1 said:
Thx, I will dig a bit. Strange thing is just read books from search don't appear in library's beginning at all. On the other hand, books read from library do change order in the library. Besides database, any other possible modules that would such problems?
Click to expand...
Click to collapse
I've come up empty. From examining the two Reader databases it is clear that they do not contain any information that would create placement in the Library such as shelves. That information must be somewhere but I have not been able to find it. There is another database, home.db, which is part of the bn.home app. There is minimal data there about books, but nothing helpful.
What is distressing (besides not being able to track down where this information is stored) is that there seems to be no mechanism to flush out the databases. Looking over mine I see (sideloaded) books that I have deleted a long time ago. No wonder things act funny after awhile.
Edit: Never say never. This post: https://forum.xda-developers.com/t/automating-shelving.1378510/ reveals the whereabouts of the information for the Library. I never would have guessed B&N would use stock Android for that!
Yeah, there used to be problems with the MediaScanner on the NST.
I got used to not relying on it.
Even now, my Library app has a fixed number of locations for books and you just hit Refresh once in a while.
The AdbSync script (makefile actually) that I use just pokes a refresh after syncing the Books directory.
nmyshkin said:
I've come up empty. From examining the two Reader databases it is clear that they do not contain any information that would create placement in the Library such as shelves. That information must be somewhere but I have not been able to find it. There is another database, home.db, which is part of the bn.home app. There is minimal data there about books, but nothing helpful.
What is distressing (besides not being able to track down where this information is stored) is that there seems to be no mechanism to flush out the databases. Looking over mine I see (sideloaded) books that I have deleted a long time ago. No wonder things act funny after awhile.
Edit: Never say never. This post: https://forum.xda-developers.com/t/automating-shelving.1378510/ reveals the whereabouts of the information for the Library. I never would have guessed B&N would use stock Android for that!
Click to expand...
Click to collapse
Wow! Thx. I need to learn sqlites to see all the contents.
Renate said:
Yeah, there used to be problems with the MediaScanner on the NST.
I got used to not relying on it.
Even now, my Library app has a fixed number of locations for books and you just hit Refresh once in a while.
The AdbSync script (makefile actually) that I use just pokes a refresh after syncing the Books directory.
Click to expand...
Click to collapse
how tro refresh? Is there adb code for that? Thx again.
smjohn1 said:
Wow! Thx. I need to learn sqlites to see all the contents.
Click to expand...
Click to collapse
You can do sqlite manipulations via ADB is you have sqlite3 installed on the NST, but for a better overall view you really need to copy the database file to a PC use a tool like this.
smjohn1 said:
How to refresh? Is there adb code for that?
Click to expand...
Click to collapse
Not really.
There are ways to make the MediaScanner scan a single file.
There is no simple way to tell it to just rescan everything.
I was talking about my Library.apk which does a simple foreground scan when you:
Code:
adb shell am start -a com.temblast.library.REFRESH
Related
I would like to pare down my Nook a bit.
I do like the native reader app and I borrow library books.
Yes, I could use the OverDrive reader, but the native reader is much better.
The first thing that went was Shop.apk
It was kind of annoying to search for stuff on my Nook and come up with 50,000 suggestions of books that I could buy.
Social.apk seems to go away painlessly too.
Deleting (or renaming) Home.apk breaks the "Last Read" icon on the desktop.
You can still get there by Library and hitting the top of most recent.
It gets you to the right page.
It probably would not be hard to write an app to do the last read function.
Moreover, you'd have a system icon to do with what you will.
(It sends an intent that is not handled. I'll have to make a receiver and see what it is.)
Okay, deleting Home.apk also breaks additions to Library.
But, you can still borrow books on Adobe Digital Editions and read them by clicking them in a file browser.
Oh, well, might as well delete Library.apk
Hmm, I guess that Library.apk is a search content provider.
Books no longer show up in global search.
I guess that I'll have to roll my own.
Re-enable Home.apk, disable Reader.apk and see what intent goes.
(Last page read is kept in /data/data/com.bn.nook.reader.activities/databases/lastreadingpoint.db
Select ean from lastreadingpoint order by lastupdated
I'm not trying to get around the DRM or anything. I just want to get rid of all the cruft.
I see what you're trying to do here
I've been playing with this some more.
Reader.apk keeps track itself of last page read.
If you just use a file manager to open your books you'll get the right page.
If you are a big library user and use Adobe Digital Editions,
then the info that ADE dumps on your Nook could be integrated nicely.
You could have your books listed and show the return date.
Hmm, do you think it could be possible to fully debrand the device and have it running a normal, common Eclair, but using the actual ROM as base? like, deleting the B&N apps and creating custom providers & intent receivers to avoid FCs and such?
Well, if you delete (or rename) Home.apk and Library.apk but still like to use Reader.apk (the native epub reader),
then you might need a convenient way to get to your last read book.
It's not rocket science and I haven't figured out the little book icon on the status bar yet,
but if you want to get back to your book here is a little app to go to last read.
Put the icon on your desktop and click the "L" to go to last read.
Did you replace library, or just completely delete it?
darkguy2008 said:
Hmm, do you think it could be possible to fully debrand the device and have it running a normal, common Eclair, but using the actual ROM as base? like, deleting the B&N apps and creating custom providers & intent receivers to avoid FCs and such?
Click to expand...
Click to collapse
I've also wondered this, I use my nook for Kindle more than I do B&N lol. It would be great if we could get a ROM to flash that removes everything from the device and just makes it run stock Android then use Kindle and B&N apps, as well as whatever other apps for reading epubs to read our books. Don't know if this is possible but it would be nice, then we could fully repurpose all the buttons on the device purely for Android OS
And make a custom e-ink friendly version of the android homescreen, possibly including no-refresh?
Right now I've got the following apps deleted:
DemoMode.apk
Home.apk
Library.apk
Shop.apk
Social.apk
I will be working on a replacement library app.
I don't use the Kindle app. Do people who do also use the Nook native reader?
At the lowest level, all you need is a file manager.
I presume that each of the readers keep track of last page.
(Regarding the Nook lastreadingpoint:
Going straight to the database is the wrong approach, using the content provider is the right way.
LastRead.apk uses that.)
Ok, it's a neat hack to watch video on the Nook, but you really wouldn't want your Nook in A2 mode all the time.
As I've said before, the best uses of A2 is when an app knows when to use it, when dragging, scrolling, zooming.
If you have the source code to a browser/viewer/whatever, putting wrappers around the dragging/scrolling/zooming operation would be an improvement.
Personally, I have no problem with my ADW Launcher.
That it blurs and trails when parking an app on the desktop is no big deal.
I've got the little book icon on the status bar to open the last book in the native Nook reader.
That is, if you don't have Home.apk or (B&N) Library.apk
Here is a stop-gap release.
It works fine for the "Currently reading" but there is not yet other functionality in it.
I left it as a complete application so that you can easily see if you have it installed.
The actual "application" part of it is a blank screen.
No need to run it or put it on your desktop.
Just install it and click the little book on the status bar.
Renate NST said:
I've got the little book icon on the status bar to open the last book in the native Nook reader.
That is, if you don't have Home.apk or (B&N) Library.apk
Here is a stop-gap release.
It works fine for the "Currently reading" but there is not yet other functionality in it.
I left it as a complete application so that you can easily see if you have it installed.
The actual "application" part of it is a blank screen.
No need to run it or put it on your desktop.
Just install it and click the little book on the status bar.
Click to expand...
Click to collapse
Hm, looks interesting, seems like you've managed to already wrap some events to dummy workers we can attach to in the future and mod this thing up . Awesome!
I'll be testing it somewhere between today and tomorrow. Right now I'm trying to replace the stock keyboard. LatinIME.apk is deleteable but there isn't any working keyboard for it yet (I've tried GO Keyboard, GB Keyboard for Froyo/Eclair and HTC IME with no avail) and it's one of the biggest annoyances I have with it since I need more of a PC-keyboard-lookalike rather than an ebook keyboard
Although I am not getting the point of your mission :-D try Hacker's keyboard. It is possible to google out android 2.1 version. It is the best I have found so far although it is quite dark.
Just thought I'd drop this link here for hacker's keyboard.
http://code.google.com/p/hackerskeyboard/issues/detail?id=57
Also, make sure that after you install it you move it to /system/app
Googie2149 said:
Just thought I'd drop this link here for hacker's keyboard.
http://code.google.com/p/hackerskeyboard/issues/detail?id=57
Also, make sure that after you install it you move it to /system/app
Click to expand...
Click to collapse
Man, you rock! I've wanted that keyboard to work specifically. Thanks a lot!!
I've had some progress on the Library replacement.
It's not ready for prime time, but it is cute.
It will list the expiration date of your library books.
It's nice to be able to fit over 10 titles on the screen.
Renate NST said:
I've had some progress on the Library replacement.
It's not ready for prime time, but it is cute.
It will list the expiration date of your library books.
It's nice to be able to fit over 10 titles on the screen.
Click to expand...
Click to collapse
That's awesome!
When will you release it?
I've been working on two different approaches.
One is to use the Android native mediastore.
There are some bugs with this and it can get out of sync.
The other is to do all the searching for books myself.
That works ok as long as the books are found in the usual places:
/system/media/books
/data/media/B&N Downloads/Books
/media/My Files/Books
/media/Digital Editions
/sdcard/My Files/Books
Are there any other locations that I am missing?
darkguy2008 said:
When will you release it?
Click to expand...
Click to collapse
I really don't know if it suits anyone's needs besides my own.
Because the stock Home.apk, Library.apk and Shop.apk are all tied together,
to have my app work correctly you have to rename or delete the three of them.
As far as I know it should allow books bought from B&N to still work correctly,
but I don't know because I don't own any. I only get library books or Gutenberg.
Is it important for people to be able to buy B&N books directly on their Nook?
Renate NST said:
Is it important for people to be able to buy B&N books directly on their Nook?
Click to expand...
Click to collapse
Why not if it's free?
Naturally, I speak for myself only.
You need credit card added to buy B&N free books still...
From another hand you can get same free books somewhere else, right?
Apokrifx is right, also, that app would suit me too. I need a credit card to buy B&N books, which I don't have -and- I'm not interested at all in using it as a reader. If I want to read something I'll download it and slam it through a PDF reader installed on it.
My main use for it is to take out ALL of the B&N stuff and use it as an android tablet, so, to me, it's really useful
I found the database file that has all of the shelves information in them
/data/data/com.android.providers.media/databases/internal.db
You should be able to back that file up and restore it.
I'm not sure if the file changes when firmware is upgraded but i was able to ADB pull the file add 2 shelves and put books in each shelf and push the file back to the nook. after a reboot the new shelves appeared with the correct books in them.
Anyone want to experiment with changing firmwares and restoring... I don't have a microsd card with me.
persichini said:
I found the database file that has all of the shelves information in them
/data/data/com.android.providers.media/databases/internal.db
You should be able to back that file up and restore it.
I'm not sure if the file changes when firmware is upgraded but i was able to ADB pull the file add 2 shelves and put books in each shelf and push the file back to the nook. after a reboot the new shelves appeared with the correct books in them.
Anyone want to experiment with changing firmwares and restoring... I don't have a microsd card with me.
Click to expand...
Click to collapse
It was discussed before – use search.
In short:
Yes – you can back it up.
It’s easy to do autoshelving based on any field in database, like author.
Some people want to autoshelve by book genre – and optional metadata field.
There is an app for NC, but it’s not easy to port it on NST.
ApokrifX said:
It was discussed before – use search.
In short:
Yes – you can back it up.
It’s easy to do autoshelving based on any field in database, like author.
Some people want to autoshelve by book genre – and optional metadata field.
There is an app for NC, but it’s not easy to port it on NST.
Click to expand...
Click to collapse
I guess I didn't search correctly because I didn't find that information... Found a lot of people asking and complaining about losing their shelves... I have 43 shelves and just lost them. I have my shelves by book series. Yes i have a lot of book.
If I was any kind of app writer I'd look into the NC app but I'm not... So I'll just have to wait until one of the wonderful developers get board and take it on.
43 shelves? Wow!
It just amazes me how differently people use their Nooks.
I just have 4 or 5 books on my Nook at any one time.
As pointed out above, internal.db is your friend.
Backing it up is a good idea if you put in a lot of manual effort to set things up.
You might want to get sqlite3 on your desktop and learn what the tables are and how to selectively restore them.
That's what I'd do if I had 43 shelves.
Code:
sqlite3 internal.db
.table
.dump shelf
.dump shelf_item
persichini said:
I guess I didn't search correctly because I didn't find that information... Found a lot of people asking and complaining about losing their shelves... I have 43 shelves and just lost them. I have my shelves by book series. Yes i have a lot of book.
Click to expand...
Click to collapse
"book series" == "book genre"
It is not represented as a field in NST internal database.
If you have it as a field in content.opf of epub book, it’s possible to write an app to auto-shelve.
Won’t help with PDF books anyway.
If not – you can do it manually only.
To save your shelve you can use Renate solution.
Not exactly user-friendly, but better than nothing definitely.
Looking at B&N bugs fixing progress, I have strong feeling, shelves disappearance won’t be fixed anytime soon.
Yeah i know its a lot of books.. and a lot of shelves. I like to read fiction books that are multiples in a series... Left behind book 1-12, Hellgates: London 1-3, Harry Potter 1-7.. etc so I make a shelf for each series... Granted there are a lot I've never read there on the to-do list. Having a visual list of how much i need to read helps motivate me.
i don't delete the book because my father in law seems to think he knows everything so its nice to be able to say oh really i have that book right here let me go to the section so we can see what it really says...
persichini said:
Yeah i know its a lot of books.. and a lot of shelves. I like to read fiction books that are multiples in a series... Left behind book 1-12, Hellgates: London 1-3, Harry Potter 1-7.. etc so I make a shelf for each series... Granted there are a lot I've never read there on the to-do list. Having a visual list of how much i need to read helps motivate me.
Click to expand...
Click to collapse
If you're doing "serious" reading and library management on the device, you might consider dumping the B&N software and using something better. I have become very fond of Mantano Reader ($5, IIRC). It does shelving very well, and handles PDFs just fine. I went for the $20/year cloud option that also syncs book positions among 4 devices, and it's working very well, as well as backing everything (book files and library options) up. I've completely replaced the B&N Library function on my device with Mantano's home screen.
Using a rooted NST 1.2.1 with cool reader.
Is there a library app compatible with this apart from the stock library? The app is just to view the books present on the device. Something like bookshelves, like the moon reader kinds.
Also, is there a NoRefresh compatible with 1.2.1 ? The other NoRefresh apps dont work with this version.
Well, you can try my Library (see signature).
I've never used CoolReader (or seen the manifest out of it) so I can't say how it will work.
Thank Renate, Your Library app is amazing, I love its simplicity. Besides, It also helps me to break the habit of putting a lot of book on my nook =).
Btw, Can it be launched on startup like default library. I hate to see Nook Launcher .
Renate NST said:
Well, you can try my Library (see signature).
I've never used CoolReader (or seen the manifest out of it) so I can't say how it will work.
Click to expand...
Click to collapse
Thanks!
But, is there any app which will present the library in the form of bookshelves?
Also, is there s NoRefresh version of NST Root 1.2.1 ?
shriramks said:
Thanks! But...
Click to expand...
Click to collapse
Does that mean that it works with CoolReader?
I guess that you could make my library the default home screen,
but then how would you launch all the neat apps on your Nook?
Hint: A long touch on a book in my Library brings up the full metadata.
It works
Selection of the book from the library prompts me for the option of reading, i.e, cool reader or the native B&N reader. Not sure how exactly to make Cool Reader the default option.
Have a lot of books on the device, so, it is a bit tedious to keep scrolling down the list. Hence the interest in shelves. B&N Library has shelves, but manual addition everytime i download a book is a pain.
Also, any other settings available on your library app apart from the metadata on long press?
Renate NST said:
Does that mean that it works with CoolReader?
I guess that you could make my library the default home screen,
but then how would you launch all the neat apps on your Nook?
Hint: A long touch on a book in my Library brings up the full metadata.
Click to expand...
Click to collapse
Indeed, by putting coolreader in /system/app, When I choose a book from library, A pop up shows me which reader will be used.
Can you show me the way to make your library the default home screen ? I really love its features :fingers-crossed::fingers-crossed:
PS:// I removed a lot of apps from /system/app, put FBreaderJ and CoolReader in, now my nook seems enhanced ( boot faster..). The battery seems better ( It lost 2%/day in idle mode)
Whenever multiple apps could handle an intent but no app has been specified as default, a "picker" window pops up.
It lists all the possibilities and at the very bottom there is a checkbox.
The checkbox has text in white which says, "Use this app as default app in the future" (or something).
Of course you can't read the white text.
Just click the box, then carefully select which app to use in the future.
To undo what you selected can be difficult because you will never see that dialog again if you check the checkbox.
There are tools to fix that, non-B&N Settings.apk or you can edit /data/system/packages.xml
Uhm It seems that we are misunderstanding. I read all your posts about alternative library app.One of them mentioned that if I want to use your Library app, I have to remove default Home, Shop and Library of my Nook. I did then when my nook started, It showed a launcher with your Library Icon.
Can you modify your app that when my nook start, it will be run at the same time and disable the HOME button ( used to get back to launcher)?
If you modified your "n" button it should go to whatever you selected as the default app for home.
Apparently that is the default launcher.
My question remains, if you make Library the default home, how will you get to your browser, email, etc?
Right now Library does not handle the home intent.
Renate NST said:
If you modified your "n" button it should go to whatever you selected as the default app for home.
Apparently that is the default launcher.
My question remains, if you make Library the default home, how will you get to your browser, email, etc?
Right now Library does not handle the home intent.
Click to expand...
Click to collapse
Not making it the default home. Configuring the physical button for switching pages as a shortcut to the library.
Also,are anyone having problems with connecting to the wi-fi?
Renate NST said:
If you modified your "n" button it should go to whatever you selected as the default app for home.
Apparently that is the default launcher.
My question remains, if you make Library the default home, how will you get to your browser, email, etc?
Right now Library does not handle the home intent.
Click to expand...
Click to collapse
Actually, I do not use my Nook for email, browser, I have an ipad for those tasks. I love the nook because I can focus on just reading. The combination of your library and coolreader makes my nook perfect.
Not making it the default home. Configuring the physical button for switching pages as a shortcut to the library.
Also,are anyone having problems with connecting to the wi-fi?
Click to expand...
Click to collapse
Which firmware are you using ? 1.0 or 1.1. I heard that 1.1.2 comes with Wifi bug fix.
Btw, Today I upgraded into 1.2.1. The reader renders text much better than 1.1.2's one howerver, the battery is a pain. I lost 4% in just one hour even in sleeping mode @@ Does any one know why ? ( I removed all unnecessary apps like phone.apk, telephony...)
I agree with you.
Without putting my finger on it the text or page turns or something is better in 1.2.1
They redid the EpdController (which handles eInk modes) in 1.2+
The Nook Touch has always had an intermittent problem with not sleeping.
I have even caught it with the screen's IR touch sensors still running in sleep.
Lore and legend says never to use the power button to put your Nook to sleep.
Let it time out on the screen saver.
I'll see about doing something on that Home issue.
Right now my Nook is not booting up and I have to hook up the console to see why.
Renate NST said:
I agree with you.
Without putting my finger on it the text or page turns or something is better in 1.2.1
They redid the EpdController (which handles eInk modes) in 1.2+
The Nook Touch has always had an intermittent problem with not sleeping.
I have even caught it with the screen's IR touch sensors still running in sleep.
Lore and legend says never to use the power button to put your Nook to sleep.
Let it time out on the screen saver.
I'll see about doing something on that Home issue.
Right now my Nook is not booting up and I have to hook up the console to see why.
Click to expand...
Click to collapse
If I replace 1.1.2 reader with 1.2.1's one, can it work?
PS:// Can't wait to see your works. :victory::victory:
A question. Your app reads files present in sdcard\my files\books.
Any way to broaden the file structure?
Thanks!
I'm trying to figure out what to do with Library.apk
Currently it only handles epub files.
It could handle any kind of file but the problem is extracting metadata.
If it's not extracting metadata you might as well be just using a file manager.
Extracting metadata out of epubs is pretty simple.
Extracting metadata out of pdfs can be difficult.
There is a nice (computer-type) library that can do this though.
The Nook Reader also handles pdfs.
I have lots of technical references in pdf but they are better accessed from a file manager.
Another topic I wanted to raise elsewhere:
Are people happy with their pdf reading capability/apps?
Are there problems with opening some pdfs or formatting?
Are the pan/zoom/orientation options sufficient?
I'm working (a bit) on a ground-up rewrite of the Reader.
It's still lacking a lot of features, but it also doesn't have all the B&N cruft in it.
Right now it has portrait/landscape of PDFs with overscan (to get rid of the paper margins).
Even this small step makes reading easier.
I've got about 200+ PDFs on my Nook, one that is 3700 pages long.
Renate NST said:
I'm working (a bit) on a ground-up rewrite of the Reader.
It's still lacking a lot of features, but it also doesn't have all the B&N cruft in it.
Right now it has portrait/landscape of PDFs with overscan (to get rid of the paper margins).
Even this small step makes reading easier.
I've got about 200+ PDFs on my Nook, one that is 3700 pages long.
Click to expand...
Click to collapse
I love and use Library.apk and I hate to be critical about such good free software but on my nook sometimes the app doesn't capture the same title and author (or even getting the author) as does Calibre and the standard nook Library. Also, sometimes the author sorting is by first name, sometimes by last name even on the same page. I'm using the 1.9 version.
The problem is always the lack of good metadata.
Even figuring out how to split a name is not easy.
Jethro Tull should be filed under J for the band or under T for the historical person?
Gabriel García Márquez, is his last name García Márquez or Márquez?
This is the way it is supposed to be filled in:
Code:
<dc:creator opf:file-as="Alcott, Louisa May">Louisa May Alcott</dc:creator>
If you can paste me the metadata that causes problems, I'd be grateful.
@mergen3107 Yes, I've noticed a lot of those problems.
The footnote one is the most annoying to me right now.
The current state of things is that I use my reader for PDFs and still use the stock reader for epubs.
Renate NST said:
The problem is always the lack of good metadata.
Even figuring out how to split a name is not easy.
Jethro Tull should be filed under J for the band or under T for the historical person?
Gabriel García Márquez, is his last name García Márquez or Márquez?
This is the way it is supposed to be filled in:
Code:
<dc:creator opf:file-as="Alcott, Louisa May">Louisa May Alcott</dc:creator>
If you can paste me the metadata that causes problems, I'd be grateful.
@mergen3107 Yes, I've noticed a lot of those problems.
The footnote one is the most annoying to me right now.
The current state of things is that I use my reader for PDFs and still use the stock reader for epubs.
Click to expand...
Click to collapse
Here is a link to examples some (of many) problem files: https://dl.dropboxusercontent.com/u/20746013/Problems.zip
They all look ok in Calibre and in the stock Lilbrary app.
I'm using the stock nook reader and renate's Library.apk. How can you make sure the last read icon on the top bar corresponds to the last read file in the library?
I am not sure where this icon gets its link. It doesn't seem to always open the last read file.
I've been thinking about asking this question (although I am using the stock reader AND library apps). My "reading now" button is getting really cranky of late. It often just goes to the first page (cover) or sometimes it goes to the first page AND displays a two-option message about the different current reading positions in two Nook readers (!) and which one do I want (generally neither is correct). Right now the only sure way to get to the correct page is to go to the Library screen and select the book from there. So the Nook does remember, but the Reading Now button is not functioning properly.
For a time I had a number of B&N apps disabled (renamed ".bak") and gradually discovered the imponderable connections that seemed to render little things inoperable. I've had to restore quite a few of the apps to running to keep everything functioning except Nook Community (because the constant "nagifications" drove me crazy) but this button behavior has me baffled (as does the reference to two Nook readers!)
I wonder, are you using any sort of "cleaning" app? I am using Clean Master and find it helpful in freeing up memory but I'm beginning to think that some of the data it is throwing out might just contain the info that the button needs to function properly. It certainly messes with Tasker.
The "Last Read" icon on the status bar sends out the intent com.bn.nook.launch.LAST_BOOK
This would normally be handled by Home.apk
If you deleted Home.apk and are using my Library.apk it has its own receiver for that.
Depending on which version Nook software you have it will query
content://com.bn.nook.reader.providers.lastreadingpointprovider/
content://com.bn.nook.reader.common.providers.lastreadingpointprovider/
The LRP database is maintained by the Reader(RMSDK).apk.
Checking for the latest modification gives you the last book read.
My Library.apk sends an intent out to open that book.
Currently Library.apk does not update the order of books displayed in "Last read" unless the refresh button is hit.
Two things to look for if you are having problems:
If you let the battery die and the WiFi is always off the clock time will be wrong.
If you crash or shutdown improperly Reader(RMSDK).apk will not get a chance to update the LRP.
P.S. I just noticed a possible anomaly if you read PDF's in the reader too.
Oh! It just occurred to me one thing.
I remember opening a book that you have been reading already and it opens at page 1.
This was tied to opening the book in different ways.
There are different ways to open a book:
Through the "Last Read" icon and stock Home.apk
Through the stock Library.apk
Through my Library.apk
Through a file manager application
The LRP database is /data/data/com.bn.nook.reader.activities/databases/lastreadingpoint.db
Code:
CREATE TABLE lastreadingpoint
(_id integer primary key autoincrement,
ean text, // file URI
luid text,
offsetrmsdk text, // subfile path fragment
lastupdated long, // Unix milliseconds last read
bookdna int, // always 1?
sync_status int // always 1?
);
ean (which normally might stand for European Article Number, i.e. "UPC") is a URI, not a path.
Code:
sqlite> select ean from lastreadingpoint;
file:///sdcard/Books/aboveall.epub
...
There may be cases where a single book gets different ean's.
If you could look at LRP and see if this is so?
I actually managed to locate that db file on my own (!) and what seemed to be a companion with related information (readerlocal.db). They seemed to be full of junk info (books that had since been removed, etc.) although there were no duplicate entries, which is what I had suspected.
Anyway, I got a little "brave" (i.e., foolhardy) and decided to clean up both files in a parallel way. Then I pushed them back, reset the permissions and rebooted.
Yikes. My Nook is set to go to the B&N Home screen only on reboot. That screen flickered and flashed, never filling in any of the images. I could still use the "N" button to access other parts of the system and they were working fine, but any return to the Home screen via the Back button showed it was still in distress.
So....restore from backup...again.
It seems OK for now. I have noticed that the little "refresh" button in the Library does sometimes seem to go on and on and on without any accomplishment. I have suspected the issue was how I accessed the book-in-progress as you described. Since I sometimes read more than one book at a time, I'm all over the place with how I do things (including a Library icon in my App home screen). I'm going to try being more disciplined for a while and see how it behaves.
nmyshkin said:
I actually managed to locate that db file on my own (!) and what seemed to be a companion with related information (readerlocal.db). They seemed to be full of junk info (books that had since been removed, etc.) although there were no duplicate entries, which is what I had suspected.
Anyway, I got a little "brave" (i.e., foolhardy) and decided to clean up both files in a parallel way. Then I pushed them back, reset the permissions and rebooted.
Yikes. My Nook is set to go to the B&N Home screen only on reboot. That screen flickered and flashed, never filling in any of the images. I could still use the "N" button to access other parts of the system and they were working fine, but any return to the Home screen via the Back button showed it was still in distress.
So....restore from backup...again.
It seems OK for now. I have noticed that the little "refresh" button in the Library does sometimes seem to go on and on and on without any accomplishment. I have suspected the issue was how I accessed the book-in-progress as you described. Since I sometimes read more than one book at a time, I'm all over the place with how I do things (including a Library icon in my App home screen). I'm going to try being more disciplined for a while and see how it behaves.
Click to expand...
Click to collapse
Would it be possible to write an app that simulates opening the last read book from only one of the Library apps and then map that to the last read icon to simplify this whole system?
mergen3107 said:
Guys, if you are concerned about why sometimes the last read option goes to the 1st page, then it was already fixed by our forum users somewhere here. (I could hardly remember and trace where it all started but finally it was successfully solved)
Just install a file this package (internal.db deep in the 'data' folder. You could delete 'system' folder - this is hyphenations dictionary for Russian) through cwm or replace it manually (the zip contains detailed path) and here you go.
Click to expand...
Click to collapse
Now that was an interesting trip! Once I had Google do some translating there were a number of really interesting posts that were (mostly) intelligible. I'd want to compare that modified internal.db file with what's already on my Nook before I did any replacing. A lot of the work from that site is "russified" (not surprisingly) and there may be other changes there not really needed/wanted, but it's a good start.
I noticed in another posting there that someone said there is a related issue with in what state the Nook is connected via USB. Apparently the hypothesis is that if you don't connect while in the Library you stand a good chance of scrambling the "reading now" database entry. I've certainly been hooking up with my Nook in all kinds of states, so if that's correct, no wonder my database file was so messed up!
Installation of the internal.db file from the Russian source will not work. I've tried a side-by-side comparison of the file with the one from my Nook (FW 1.21) and there are differences (beyond the region identifier, which is easily changed). It's not at all clear what changes have been made or from what firmware the modified file came. In any case, it causes havoc when exchanged for the native internal.db
The Russian discussion points to this thread on XDA which approaches (and apparently solves) the problem another way. I'm going to give it a try.
nmyshkin said:
Installation of the internal.db file from the Russian source will not work. I've tried a side-by-side comparison of the file with the one from my Nook (FW 1.21) and there are differences (beyond the region identifier, which is easily changed). It's not at all clear what changes have been made or from what firmware the modified file came. In any case, it causes havoc when exchanged for the native internal.db
The Russian discussion points to this thread on XDA which approaches (and apparently solves) the problem another way. I'm going to give it a try.
Click to expand...
Click to collapse
Do I read this correctly, http://bit.ly/Q7MytN from that thread there should be no problem if renates Library.apk is used exclusively and the stock Library.apk has the bug?
I must have a unique way of using my devices because I've never seen this issue reported on the forum.
Firstly, I just want to say that lastreadingpoint.db seems to be something of a garbage bin. I'm working with one of my older devices right now (formerly my principal reader) and the db is filled with books that were deleted long ago. Now, perhaps, cleanup of this file is supposed to happen when books are removed via UMS since that's the only provision B&N made for removing side-loaded content, but I doubt it. Since I just use a file manager, I may be frustrating some grand design that would keep the db file tidy. NOT.
But I digress. My real beef is the unpredictability of the button. When I select a new book from the library and move along a few pages to the first chapter, I often return to the home page to deal with some other things and then set the device aside until I'm ready to start my new book. But when I do return and tap that button, I generally get the last book I just finished (at the last page....). If I have deleted that book already then I'll get some other book, maybe an anthology I frequent, wherever I left off.
Inspection of lastreadingpoint.db shows no indication that I ever selected a new book.
I have struggled with this for a long time and realize that without knowing exactly when and under what circumstances the db would actually be updated, this is really difficult to run down. I just tried another experiment and put the device to sleep manually after starting a new book (book still displayed). Then I woke it up and returned to the home screen (i.e., my launcher, not the B&N Home). The "now reading" button worked correctly! And repeatedly.
BUT...A look at lastreadingpoint.db still did not show that the new book had been opened! This helps explain why my overtures with sqlite were not having much effect.
It's a mystery, wrapped in an enigma, enclosed in a B&N box.
I just want the #$%&*% button to do what you would expect it to do without a lot of nonsense. It's easier to get it to consistently open a current Kindle book then to open an epub in the stock reader.
Why?
Edit: The next day: I accessed the book one more time this morning without any problem and copied out the database again. This time it finally showed an entry for the book with the correct access time.
Edit: 9-12-22 Nothing seems to work consistently except for one change. I have installed on my devices a little app called "NookReader". It's buried deep in the old posts of the forum and its purpose is to allow epubs to be opened via a file manager (which I never do). In effect it creates a "listener" which the stock system lacks.
Well, it seems the stock system doesn't like eavesdropping. When I uninstalled the app from the device I had been experimenting with the effect was immediate and I was able to move from selection to selection, each time returning to the most recent book correctly using the "now reading" button. Another device required an uninstall as well as a reboot in order to start behaving properly.
Moral: if you're not using it, get rid of it!
nmyshkin said:
I have struggled with this for a long time and realize that without knowing exactly when and under what circumstances the db would actually be updated, this is really difficult to run down. I just tried another experiment and put the device to sleep manually after starting a new book (book still displayed). Then I woke it up and returned to the home screen (i.e., my launcher, not the B&N Home). The "now reading" button worked correctly! And repeatedly.
BUT...A look at lastreadingpoint.db still did not show that the new book had been opened! This helps explain why my overtures with sqlite were not having much effect.
It's a mystery, wrapped in an enigma, enclosed in a B&N box.
Click to expand...
Click to collapse
@nmyshkin ... even i've struggled with something like this ... inconsistencies of the last reading point actions ...
nmyshkin said:
Edit: 9-12-22 Nothing seems to work consistently except for one change. I have installed on my devices a little app called "NookReader". It's buried deep in the old posts of the forum and its purpose is to allow epubs to be opened via a file manager (which I never do). In effect it creates a "listener" which the stock system lacks.
Click to expand...
Click to collapse
are you referring to the app that goes by 'dev.nookreader.apk' ? ... for now i've just renamed it to 'dev.nookreader.apk.bkp' so its as good as removed ...
some database problems i think i can report, one that i've annoyingly encountered, in this I've sometimes found the order of the books in the default library aren't displayed as they should have ... Iam referring to the 'Most Recent' sorting option where the last opened/accessed book should ideally show up at the top most ... BUT SADLY IT DOESN'T !!! ...
Most annoying is when i search a book open and read it and expect it to show up on the top or at least in the first few pages of the library ... but they don't ... search is the only option to reopen such a book ...
Aren't the books that are opened using the 'Search' option of the library not supposed to show high up the library ?
I WOULD REALLY LIKE TO GET THIS ANNOYANCE RID OF ... i would love to find all the last accessed books in the topmost sorting order as its supposed to work ...
I don't even know what database records the last accessed book information ... any and all help appreciated to identify and fix this annoyance.
PS : Are "New"' books(Lend Me) installed from the B&N store supposed to show up at the topmost ?
Update : strangely the searched book shows up in the B&N Home under 'READING Now' section but its not showing in the Library as the topmost book in it ... another inconsistent DB recording ???
aiamuzz said:
Update : strangely the searched book shows up in the B&N Home under 'READING Now' section but its not showing in the Library as the topmost book in it ... another inconsistent DB recording ???
Click to expand...
Click to collapse
OK, well, I can't say that I know a lot more now than when I started this thread.
What I can say is that the device seems to work with a copy of the database in RAM or else keeps variables in RAM that are not written to the database until much, much later (like during or after a nap).
I began to think about how I use the device vs. how B&N intended it to be used so I made a few tests going from the B&N Home to the Library, to a book. Then, there is really only one way to get out of the book and that is through the QuickNav buttons. I thought that maybe the trigger to the database update was somewhere in there, but I saw the same inconsistent results and delayed updating of the file as with my own sequence.
This is why I eventually abandoned the database as a source of info for my SetCover app and started relying (at least partly) on my own data. All I can say for "sure" at this point is that a good nap on the open book seems to aid in the correct information making its way into the database. Not very technical, I know.
If you are getting really spurious behavior from your lastreadingpoint.db or you find that it is full of deadwood, you can clean out the entire thing as here. Of course you will lose absolutely everything in the database if you do that, so it's a "last gasp" scenario.
For me, things seem to have calmed down if I just leave an epub open in the stock reader for awhile. And after all, what's the rush to get back to the home screen? (in general). That's not how the reader was probably meant to be used.
aiamuzz said:
Update : strangely the searched book shows up in the B&N Home under 'READING Now' section but its not showing in the Library as the topmost book in it ... another inconsistent DB recording ???
Click to expand...
Click to collapse
Can you run this test ?
1. Open stock library.
2. Search for some book that is buried in the last pages of the Library.
3. Open that book from the search results.
4. Flip a few pages to emulate that you've read that book.
Ideally that book should be the Last Read (Reading Now) ... WHICH INDEED DOES WORK SO !!!
Having been a recent book that one has read ...
The Library app should also show that book on the very first page as its the most recent one ... BUT IT DOES NOT SHOW SO IN THE LIBRARY !!!
I would really like the searched and opened books to move to the front pages of the Library App and stay there and get moved down as and when other books are opened ... at worst it should be easily locatable in the first few pages of the Library App ... the 'recent' book sorting option in the Library and the place where this info is stored may have to be trouble shot ...
aiamuzz said:
Can you run this test ?
1. Open stock library.
2. Search for some book that is buried in the last pages of the Library.
3. Open that book from the search results.
4. Flip a few pages to emulate that you've read that book.
Ideally that book should be the Last Read (Reading Now) ... WHICH INDEED DOES WORK SO !!!
Click to expand...
Click to collapse
Well, there you are. I've never used the "search" function on the NST for anything! But I did, just to humor you, and I see that it actually turns up a "hit".
I use the Library almost exclusively in shelf format. What I personally would like is for the @%W$#% Library to remember that. Of course, it will not, because then I would not see all the nifty new books I just purchased (NOT) from B&N as they are delivered.
Any "adjustments" to the Library behavior are beyond my pay grade and you won't get you-know-who interested in that either, as she has her own Library app. I've looked at a lot of Library alternatives. There were many promising looking ones in the early days but all seem to have been abandoned at some incomplete point by their developers (except for the one mentioned above).
I just live with it. I don't have hundreds of books on my device. When I finish a book I actually delete it (gasp!) [except for something like the Bible].
But it would be nice to understand the rules or thinking behind the "reading now" business. However, since the database doesn't seem to accept input (although you can read from it), it doesn't matter much I guess.