MobileSheets Forums

Full Version: files unexpectedly moved to com.zubersoft.mobilesheetspro/files
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
I have set "Let MobileSheets Manage My Files" to OFF, MobileSheets Storage Location is the unchanged default /storage/emulated/0/Android/data/com.zubersoft.mobilesheetspro/files. My library is stored in two locations, a "one file per song" part in subfolders of SD0/_MobileSheets and a number of big fakebook PDFs on an external SD card in SD1/_Fakebooks. I moved my complete library from one tablet to another one by making a backup on the SD card. Then I inserted the SD card into the second tablet, installed MSP and imported the backup with "import to the original location". That seemed to work flawlessly, but the fakebooks were copied to /storage/emulated/0/Android/data/com.zubersoft.mobilesheetspro/files instead of leaving the path unchanged pointing to SD1, where all the files were and are still available!
The library entries now are referring the MSP storage. It's about 500 MB, that's why I want the fakebooks on the SD card.
Is there a way to correct that which is less effort than opening all the songs and correcting the path in song editor?
I'm not sure why it didn't respect the original file paths, but let me know if this would work: clear the library, set the storage location to the external SD card, and then restore the backup again. Obviously if you have your files organized in a particular way, this may be less than optimal. I personally don't have two tablets that both use the same path for the external SD card, so I won't be able to test this particular scenario. In your case, they both use the exact same path to the external SD card, right?

Mike
The issue came up lately when I had my own tablet repared and borrowed one from our bass player, who also owns an MSP licence, but doesn't use his tablet on stage yet. Now my own one is back - a good opportunity for tests like this.
I will try setting the path to the SD card as proposed and let you know the result.
Your suspicion is correct: the issue was caused by different path names of the external SD card. My Acer tablet runs on Android 4.4.2, where my fakebook folder on the external SD card was /storage/sdcard1/_Fakebooks. The borrowed Odys tablet runs on Android 4.2.2. Moving my SD card there changes the path to /storage/external_storage/sdcard1/_Fakebooks. 
The f...ing Android SD card hassle again!
On the first glance restoring to the MSP folder in case the original folder is not available is a good idea: the restored library can be used as before.
Note that this could also be caused by an Android update.
Note2: in case of a previously existing folder structure on the SD card, all the subfolders are lost, all the files are in the same folder afterwards.
So I would recommend to display at least a warning message that MSP is going to change the storage paths! Preferably at the beginning of the restore, when aborting is still possible.
Yes - Google really shot itself in the foot with their attitude towards the security of the external SD card.  All sorts of applications no longer work properly following upgrades in the OS. 

Why the users can't be trusted to make their own decisions about such matters beats me.   I can understand the use of default locations for those not technically proficient, but that's no reason for those who do know what they're doing to be denied proper access.
Hello

Why not make it simple and flexible:

In MS settings we should select what folder path (internal or external) files are located
Tahn we coul put manually files in there respective folder. PDF-Mp3-Midi

than when adding a song, we enter infos but dont have to enter path to any song because ms knows where to get them with a unique name.

when using many tablet, just export a database and manually copy files in folders on a second tablet
than on that tablet just edit in settings the path where the files are stored.

it would make everything so easy and fast.

do you think that could be done ?
That strongly ties together song titles and the underlying file names for those songs. If the files were not named perfectly to match the songs, it wouldn't work. I think a lot of people probably don't want to have their song titles tied to their file names. There is also a concept of synchronizing to a folder which is something I want to support at some point, but that's a little different.

If you control your own storage directory by going to the Settings->Storage->Let MobileSheets Manage My Files and unchecking that option, then you can create whatever file/folder structures you want. You can also export the database to whatever storage directory you choose, meaning you could copy & paste the files (including the database) to another tablet as you described. So the only difference between this and your suggestion is that songs would be automatically associated with files based on a name that would be entered. If that is an issue, the addition of a synchronization feature for automatically adding new songs when new files are added would take care of that.

Mike
(08-14-2015, 04:18 PM)Zuberman Wrote: [ -> ]If you control your own storage directory by going to the Settings->Storage->Let MobileSheets Manage My Files and unchecking that option, then you can create whatever file/folder structures you want.

That was true for earlier versions of the OS but now, if you are using an external card, the user is limited to whatever directory has been allowed for by the app concerned. 

I tried to set up my own directory structure (on an ext SD card) and MSP wouldn't write to it, only the default directory was accessible.
(08-14-2015, 08:44 PM)GraemeJ Wrote: [ -> ]
(08-14-2015, 04:18 PM)Zuberman Wrote: [ -> ]If you control your own storage directory by going to the Settings->Storage->Let MobileSheets Manage My Files and unchecking that option, then you can create whatever file/folder structures you want.

That was true for earlier versions of the OS but now, if you are using an external card, the user is limited to whatever directory has been allowed for by the app concerned. 

The worst is Android 4.4. Android 5 has a new API that lets apps write to the SD card. They have to ask permission (a one time ask per card I believe), then they can write to anywhere on the card.

http://www.androidcentral.com/lollipop-b...kind-youll

I guess it needs Mike to use these new APIs (if he's not already) to make it work.
I wasn't aware this had changed with v5. Good to know that someone actually listened to all the complaints about the external card problem.

Of course, I won't be upgrading my tablet to Lollipop because of the on-going issue with Bluetooth connectivity. One step forward.... and another one back Smile .
MSP doesn't need write access to /storage/sdcard1/_Fakebooks to use the files stored there for displaying songs. I store files there manually and import them into songs. In the reported case the files were still in the same place, just Android changed the path where the external SD card shows up.
The switch to the new API with lollipop isn't really that simple unfortunately. I've done a lot of research on what I will need to change, and in order to even begin working on it, I will need a tablet running Lollipop with an external SD card (which I don't currently have). At some point I will work on obtaining one. It's possible that if I request access to the entire external SD card, that I won't have to change other code to create/write files, but if that's not the case, I will have to restructure code in any place in my application that creates or modifies files.

Mike
I have a tablet running lollipop with an external SD card if it helps.

Andy
My tablet with android 4.4.2 is back and after several backup and restore cycles I came to these settings and storage locations:
Let MobileSheets Manage My Files: OFF
Set the MobileSheets Storage Location: external SD card
/storage/sdcard1/Android/data/com.zubersoft.mobilesheetspro/files
Expose Database File: ON
The "one file per song" part of my library is stored in internal memory 
/storage/emulated/0/_MobileSheets with subfolders /A ... /Z. 
This is required because I have a number of ChordPro files and want to be able to edit them directly on the tablet. If they are on the external SD card, my editor cannot write them.
The fakebooks are in 
/storage/sdcard1/Android/data/com.zubersoft.mobilesheetspro/files/Fakebooks
I was surprised that
/storage/sdcard1/Android/data/com.zubersoft.mobilesheetspro/Fakebooks
(without /files) did not work. If I stored the fakebook files there, they were restored to
/storage/sdcard1/Android/data/com.zubersoft.mobilesheetspro/files
as reported in my first post.
Surprisingly because MSP should have write access there,
/storage/sdcard1/Android/data/com.zubersoft.mobilesheetspro/BAK
can be used without problems to write backup files.
Actually I ignore the problem of moving my library between tablets with Android 4.4 and Android 4.2 which raised the issue originally. I hope that I will not need that regularly.