MobileSheets Forums

Full Version: Marshmallow/MSP/SD-Card
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
Pages: 1 2 3
Yesterday my Sony Z4 Xperia Tablet got the Marshmallow update and I was so daring to try it.

The update worked without a hitch but it seems to me that all third party apps have problems with the micro SD card.

Though the Android system itself knows it, can browse and use it other apps like MSP (but also ES Explorer and other explorers and apps) can't see it.

I'm aware not many of you will have Android 6.0 yet. But if anybody has, does MSP work with the SD card or is it just my device?

Mike, are you aware of problems for MSP (or in general) with using the SD card with Marshmallow? I'm talking of the normal use, not the conversion to internal storage (which isn't available on Sony devices anyway).
I don't think Android 6.0 should have changed access to the SD card. They did add the ability to revoke app permissions, but I doubt you changed any of those for external storage access. If you go to /mnt in the file browser, you don't see an entry for extSdCard or sdcard1?
The SD card is visible and accessible for Android, but not for the non native apps I tested.

Though I just got help from the Sony Xperia Support chat. De- and reinstalling the app helps. Haven't tested it for MSP yet but am quite sure it will work there too and will report.

You probably won't have to do something but maybe this post helps others with the same problem after an update.
Well, reinstalling did the trick. SD works again. But there's another problem.
Marshmallow now recognizes my SD card not as sdcard1 anymore but as 6630-6638.

So all the paths in the database are wrong now. I tried renaming the SD card without success. Any ideas how to fix this?
Did you back up your library before you updated to Marshmallow? It might be best to just restore your library at this point. If you are wanting to use the external SD card to house your files, I'm working this weekend on adding the ability to use any directory on an external SD card for the storage location. Assuming I'm able to get it all finished, you could use that to restore your library to the external SD card, and then turn off the "Let MobileSheets Manage my Files" if you want to manage the files yourself from that point.

Well, sort of. I told my backup method in another thread. So I could backup from my mirrored phone and restore that to the tablet.
But of course sadly I can't use my sync method any more because of the differing paths in the database.

I was told it's now the normal behaviour of Android marshmallow to use the serial number instead of the former “sdcard1“.

So there will be problems for all MSP users updating to Marshmallow with the database. It would be great if you could find a way around that, I don't know, using relative paths and/or automatically insert the name of the current SD card in the path when opening songs. But i expect that would be difficult.
If the tablet is rooted, you can create a symlink sdcard1 -> XXXX-YYYY.
Actually, I'm surprised Android didn't provide one.
On my KitKat 4.4.4 there are several 'legacy' filenames for the sdcards.
I shied away from rooting so far since I didn't really need it and I would have to reinstall everything as I understand. But I'll have to consider it if no other solution presents itself.
I do have a plan to switch the way I store file paths in MobileSheetsPro to support both absolute and relative paths (where a relative path is relative to the storage location). This would allow the storage location to easily be moved without having to update all of the file paths for things in the storage directory. This would certainly make it easier to update the storage location if the SD card suddenly changed paths. For now though, there is very little I can do to protect against something like what you are describing. This is the first I've heard of it too. I wonder what Google expects developers to do... I'll have to do some research.

Might it be possible to replace the paths in the database with Sciurius MSP tools as a temporary workaround for me?
Not unless a lot of risky trickery is involved.

I think Mike has better ways to handle this.
For example, first, make a backup ( .msb )containing all songs and files.
Upon restore, check [x] restore to paths. When MSPro encounters a path that it cannot create or write to, it can prompt for a path replacement. For example, if it encounters a song that must be restored to


The replacement inscruction would be

/storage/sdcard1 => /storage/0123-4567

and the song would go to /storage/0123-4567/Scores/Foo/mySong.cho

It can then apply this replacement path for all subsequent files that have /storage/sdcard in their paths.

Mike, if this is too hard I could make a special tool to 'relocate' an existing .msb so it can be restored with all songs in a different location.
The issues I reported regarding Android 4.2 / 4.4 is quite similar what we see here, see
Thanks sciurius.

If there's no way around a backup and restore I will have to do that (though I will have to sync my cell first, backup from there and restore that to the tablet).
Did I understand correctly that you already can restore different location? I thought Mike was only planning to implement it so far.

Short term I will just swap the few songs I need for a gig setlist.

Another thought: Isn't it possible to extend the swap function to some kind of mass swap (or location repair) option, like, put all in a setlist (or select otherwise) and not individually swap with a file but change the path for all selected similar to the replacement instructions above?

This would not only be a repair option for Marshmallow update but also useful for organizing songs on the SD card if you want to move source files into different subdirs (I actually did this a few times already and used the swap feature on the individual files afterwards).
Lots of things like that are possible, but the level of effort to create the new UI components, handle all of the file operations, translate it into all the different languages, handle all of the error scenarios and make it something that most users can actually take advantage of is something that needs to be considered. What you are describing is exactly why I have MobileSheetsPro manage files by default - if the storage location needs to be moved, MS Pro can move the files and update the database in one shot. If you want to manage your own files, moving all of them is no longer as simple. I do realize that I need to add the Android 5.0+ features for external SD cards, which is why that is at the top of my list now (and I have a tablet now for testing). If needing to move the files used by songs to a different location is something that users are going to need to frequently do, I could certainly add something like that under the overflow menu on the library screen. This would iterate through all of the selected songs, locate the files in the original location and try to move them to the new location. There are a number of things that can go wrong with that though. First, I would certainly need to add the new code for Android 5.0+ that provides access to the entire external SD card. For Android 4.4, that's not possible, so I would need to ensure that read-only directories can't be selected. Second, if song files are being moved with identical names that were previously in different folders but are now being moved to the same folder, I have to add all of the code to handle the conflicts. All of this requires a lot of work and additional testing.

I'm not saying I won't implement this capability - I just want to make sure this is something that is important to the normal operation of the app for most users before investing a lot of time on it. Google really hasn't made using external SD cards very friendly for users or developers.
(03-14-2016, 10:36 AM)Zuberman Wrote: [ -> ]What you are describing is exactly why I have MobileSheetsPro manage files by default - if the storage location needs to be moved, MS Pro can move the files and update the database in one shot.

So it seems we need a way to specify an alternative (external SD card) location for MSPro to put managed files.
This location cannot change, except when restoring a backup.
Would this make things easier?
Pages: 1 2 3