This object is in archive! 

Workingdir on ext_sd does not work with CM13 (Android 6)

berndy2001 shared this problem 8 years ago
Not a Problem

I recently updated my smartphone from CM12.1 (Android 5.1.1) to CM13 (Android 6.0.1).

With 5.1.1 my workingdir was on /Locus on the external sdcard.

Now with Android 6, Locus offered to use path_to_ext_sd/Android/data/menion.android.locus.pro/files/. I´m not happy with that, but better than nothing. Locus started, i quit and moved the files to the new path.

On next start i got the message again, but this time, the selected dir in Android/data/menion.android.locus.pro is readonly.

Replies (13)

photo
1

Good day Bernhard,


all around Locus & SD cards is already wrote here: http://docs.locusmap.eu/doku.php?id=manual:faq:use_sdcard_on_kitkat


On your second screenshot is anyway not wrote that it's "read-only". If I read correctly, there is only a warning, that directory will be automatically deleted after un-install.

photo
1

Ah sorry, ignore my previous post, I was looking quite incorrectly on your screenshot. Heh, then this is the first time I see something like this. CM13 is still in some beta version or is it already final stable version?


Also if you are using CM13, it's probably easy to get a root access. Then I suggest to unlock SD card and use it as old good SD card with full read-write access everywhere, not just in private directories.

photo
1

Hi Menion,


thanks for your help. CM13 is work in progress, don´t know if there will be an release in the near future. I´m using a snapshot which is very stable so far.

Yes, root-access is no problem, but i havn´t found out yet how to unlock the sdcard. With Kitkat and 5.1.1 a never had these problems.

But the main problem (writing in private directoy) still exists, which should work out of the box. In the next few days will try it on a motorola device with stock android 6.

photo
1

Understand. Anyway I had here a few more troubles with CM13 and unfortunately I'm starting to be little bit allergic on such reports. So when CM13 will be in final stable release, I may try to solve it.


Btw. Locus test read-write access by quite heavy method - it really tries to create a file and if exception is thrown, directory is considered as "read-only". So in this case, some problem had to happen and Locus is really not able to write into private directory.


And to get write access, this app may helps https://play.google.com/store/apps/details?id=nextapp.sdfix&hl=en , or you will find some description on internet, how to do it even without this app. It's just small change in one private file.


Thanks for understanding.

photo
1

Hi, Menion


the sdfix app from the play store did not work anymore for 6.x!

I'm not a Android programmer, but the solution seems to me to use the new storage system of Android.

Under Titanium Backup I choose for the backup location the storage of the document provider. I choose the external SD card and Titanum is now using his default folder. In old notation /sdcard1/TitaniumBackup. Titanium got the rights from Android to write to this directory. No probs with poweramp so far also.

photo
1

Hello,


not working?? Funny. Another complication that Google brings us.


using new system over document provider is usable for simple files (as Locus already use for srtm data, vector maps, backup data), but completely useless for access to SQLite database.


I'm sorry, but I have no solution here. CM13 seems to me for now ass most buggy rom I even saw for all these years, if I talk about CM13 & Locus cooperation.

photo
1

To be able to better check some problems with CM13, I've installed nightly build on my older SGS2 device.


You are correct ... "hack" that enabled write access to SD card is no longer working. Nice improvement in latest Android. Hope, clever developers find some workaround for this.

photo
1

First of all


the new storage system in Marshmallow is horrible, because even root is restricted.

2nd there is now way to ignore this shitty SD card interface of google.


New devices comes with Marshmallow, and if you wont accept huge security holes in your phone you often have to update. Today 36% of all androids runs Lollipop, with Kitkat (where the SD story begans) + Marshmallow we have 73% market share (http://developer.android.com/about/dashboards/index.html)


So, one posible solution is to install all DB files on the fast internal card and all other files (optional) on the SD card.


Yes, there is a config option in Locus for this, but it's complicated for beginners and incomplete. Example: I have created many POI with photos/videos (a couple of GB), but the data/media directory must be on the same dirctory as the DB files. This means on the internal card.


My dream: Locus request an optional directory from Android in the same manner as Titaniumbackup on the external SD card to store all these big files. And: ...Android/data/menion.andoroid.. isn't a save place for photos and "normal" users did'nt root the phone.

photo
1

The new storage system is not horrible, it is new and new is for many user horrible :-)


When you migrate the sd card to internal memory you can do all the things you wrote.

All datas from Locus are then stored on the SD card and you have full access with PC to your SD card.

photo
1

Yes I know, BUT


the external card will replace the internal card (so throw away your 16 or 32 GB internal mem) as far as I know. The memory interface to the external card is much slower compared to the internal. The ext SD is encrypted, so no way to remove an copy files to the card. This is really an improvement but only for really cheap devices.

photo
1

OK,

I must correct myself. Once a SD card is adopted the internal storage access is restricted and for apps, apps-data, cache only. Good for 8GB phones, space wastage for 32GB phones.

photo
1

If you don't mind using xposed there's a extension called Marshmallow SD fix that solved the problem for me on cm13.

photo
1

Thanks, this is the solution.


For everybody in the same situation. For Samsung devices install this xposed version wird this Marshmallow SD.

I own a galaxy S5 (g900f) with stock samsung 6.01. Works like a charm!


photo
1

I tried Marshmallow SD but it didnt work.

So I tried Xinternalsd Module (also Xposed)

with just checked the last CheckBox ("Voller Zugriff auf externe SD Karte"), the rest I kept unchecked and this works!

Locus has its Locus folder now in:

/mnt/media_rw/Locus

strange location, though but fully working.


So I uninstalled the non working Marshmallow SD module and it still works. Xinternalsd is OpenSource, by the way, like that better, beside that the Marshmallow module is a bit unfinished (no sorting of apps and very basic) :)


photo
1

Indeed. Marshmallow sd fix functionality seems to came and go.

photo
1

I testwise deaktivated XinternalSD, because this throws a irritating error "The process system does not respond" ("Prozess system reagiert nicht") after each boot. And still Locus works, so this is because of my fix in the /data/system/packages.xml

Adding to the perms section of each app which needs write access: <item name="android.permission.WRITE_MEDIA_STORAGE" granted="true" flags="0" ></item>

See my post in xda.

And I have a init-script in Tasker, which starts on boot, which does a chmod 777 on the /mnt/media_rw

I guess that is it what needed for Locus, not the Xposed module. This is needed for Titanium though, Titanium isnt able to write the path /mnt/media_rw/... don't know why.

photo
1

Hi can you explain me step by step? I installed first Marshmallow_SD_fix then tried with XInternalsd but Locus will not work.

I'm using HTC One M7 with CM13

photo
1

Locus ticked in Marshmallow_SD_fix ?

Everything ticked and path defined in Xinternalsd ?

photo
1

yep

Replies have been locked on this page!