07-30-2018, 05:14 AM | #1 |
Wizard
Posts: 3,305
Karma: 10259306
Join Date: May 2016
Device: kobo forma, Kobo Libra, Huawei media Tab, fire HD10, PW3 HDX8.9,
|
cc and moon+ will not agree on file path names
i have had this issue on other tablets, but it is bugging me now on my new Lenovo yoga tab ( android 7)
CC uses storage/emulated/0..... as part af any path name to books' folders, which is believe is the official correct method but the moon+ folder browser replaces emulated with a symlink? of sdcard so when I browse to the folder that CC is using- /emulated/0/books , moon+ shows it as /sdcard/books. both programs disallow typing a folder path, you have to browse from root and accept that offered path names having two different path names which lead to the same folder causes various problems - leads to duplicate entries in recent books if the same book is opened 1) via CC, 2 via moon+ my files. and to issues with delete: e.g. if I delete a book in CC, moon+ keeps the /sdcard/ reference to it in recent files, though admits that the file is not present when queried my previous workaround , on my samsung tablet, was to use a real SD card, then both programs would agree on the path to that, but I have no actual sd card in this Lenovo tablet, nor do I really need one as it has 32Gb on board. is there ANY way to force the 2 programs to agree on a path name to a books folder in internal storage? PS I have posted here rather than in the very long Moon+ thread elsewhere. rules say I cannot post twice but I am happy for the question to be moved, I have tried putting the CC folder elsewhere, but any selection gets prefixed with /emulated/0 and that is always changed, in moon+ to /sdcard |
07-30-2018, 06:04 AM | #2 |
Grand Sorcerer
Posts: 11,703
Karma: 6658935
Join Date: Jan 2010
Location: Notts, England
Device: Kobo Libra 2
|
CC isn't going to be able to help you. The reason: CC must use the Android Storage Access Framework to create and manage folders. As a consequence CC doesn't have a "real" path to the files, which it needs to pass the book to a reader app. CC gets this real path by asking Android for the path to CC's private folder, then walks up that path until it finds the books folder.
CC gives Moon+ the path it found. I have no idea why Moon+ is choosing to change that folder, nor do I know how it finds that sdcard symlink. Just to make your day: life is going to change later this year. Google has said that in order to release updates, apps must "target" Android 8 starting in November. That is bad enough because it means that CC must be much more aware of differences in Android versions. To make matters worse, another thing Google changed, starting in Android 7, is making it illegal for an app to pass a file path to another app. It must instead pass a "handle" to the contents of the file, which the receiving app uses to copy the file into its own space. As a consequence, once CC targets Android 8 (which it must do), on Android 8 (and I think 7) reader apps must make a copy of books when the book is opened from CC. Once that happens the difference in file names becomes irrelevant because they are in fact different files. |
Advert | |
|
07-30-2018, 06:19 AM | #3 |
Wizard
Posts: 3,305
Karma: 10259306
Join Date: May 2016
Device: kobo forma, Kobo Libra, Huawei media Tab, fire HD10, PW3 HDX8.9,
|
ok - so it is really a moon+ issue, but not one that is ever likly to get sorted.
to leave with a final example. if i choose to to read the book title1 via CC, moon+ creates a database entry for storage/emulated/0/books/title1- which is the path that CC passes to it but if I locate the same book from within moon+ , via my files - it creates ANOTHER database entry for /sdcard/books/title1 both entries point to the same file but each entry has it's own saved record of last page read.... i dread to think how confusing d get it the mutli user option was also in play on the android device with an actual SD card in use as the books folder though, both programs do agree on what the path should be, and deleting a finished book from in CC removes the recent entry in moon... google tells me that sdcard is a symlink, I am not an android expert. if I follow your explanation though, because this is an android 7 tablet, my books are being stored twice, as moon+ has to create its own copy. I am pretty suremoon is not creating a copy, because zapping a book from in CC, causes it to become file not found in moon. Maybe android 8 is the release that's going to change that |
07-30-2018, 06:30 AM | #4 | |
Grand Sorcerer
Posts: 11,703
Karma: 6658935
Join Date: Jan 2010
Location: Notts, England
Device: Kobo Libra 2
|
Quote:
|
|
07-31-2018, 02:50 AM | #5 | |
US Navy, Retired
Posts: 9,864
Karma: 13806776
Join Date: Feb 2009
Location: North Carolina
Device: Icarus Illumina XL HD, Nexus 7
|
Quote:
Not an elegant solution but you can remove any book entry from the Moon+ recent list by clicking on the 3 dots next to the book entry. |
|
Advert | |
|
07-31-2018, 03:53 AM | #6 | |
Wizard
Posts: 3,305
Karma: 10259306
Join Date: May 2016
Device: kobo forma, Kobo Libra, Huawei media Tab, fire HD10, PW3 HDX8.9,
|
Quote:
will see how it all works after those to-be-enforced "target android 8" changes roll out in both programs... i stopped using the my shelf and the auto add features of Moon+ because of this same issue |
|
Tags |
moon + |
Thread Tools | Search this Thread |
|
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
[Android] Cannot get cc and moon to agree on file path name | stumped | Calibre Companion | 12 | 05-10-2017 12:00 PM |
Moon+ Reader Pro Author Names with apostrophes? | DTFan | Android Devices | 2 | 11-29-2014 01:41 PM |
File path | JimmyG | Sigil | 1 | 02-15-2013 12:40 PM |
[Bug] Calibre using all lower case path names | krunk | Calibre | 0 | 05-01-2010 02:58 PM |
Remove file path from PDF file | DuckDodgers | 1 | 08-13-2006 09:23 AM |