• Introducing XDA Computing: Discussion zones for Hardware, Software, and more!    Check it out!

[TOOL] DirectoryBind - move data to external_sd (GameLoft, Shadowgun etc.) ROOT req.

Search This thread

nunchuk5t

New member
Dec 21, 2016
2
0
I got it to work by rebooting and actually played NOVA 3 with this app. But after I closed the game, whenever I want to open it again, it says I need to download data. Same applies to gangstar Vegas
 

thebrazen

Member
Aug 19, 2014
19
1
ricondefreebsd.blogspot.com
Hi all !

This is my application to bind directories located on external_sd to directories on internal memory (/sdcard/). This way You can transfer large application data directories to external_sd. Could be usefull with ex.: games from Gameloft, other like Shadowgun, applications like CamScanner.

screenshot:
SC20111225-111214.png
SC20120105-183116.png


SC20120105-183406.png
SC20120105-183427.png


Features:
* Requires ROOT !
* Aimed at specific functionality and features (not idiot-proof)
* You can create any number of Data -> Target directory pairs, mount them manually or choose to mount them on system boot (checkbox does that).
* On/Off switch controls whole mount-on-boot function.
* Diskette icon indicates if mount operation was successful, by taping it You can mount/umount entry.
* Icon changes if application is using mounted entry
* DirectoryBind can tell what application is using this entry (tap at entry in use)
* Long tap on entry (disabled) brings edit/delete window
* App auto umount all entries on USB connected and remount after USB disconnected (for now via BroadcardReceiver UMS_CONNECTED / UMS_DISCONNECTED)
* App shows notification and vibrates if auto umount on USB fails
* If mounting all checked entries (ex. on boot) app is waiting specified time (def. 60 sec) if data directory is not available (happens sometimes at boot)
* Tested sucessfully with Asphalt 6, Shadowgun, DeadSpace, CamScanner

Color statuses:
* GRAY - entry disabled
* RED - mount failed
* BLUE - waiting for data availability
* GREEN - mounted OK

version 0.2.0k
* fixed FC if screen orientation changes during copy/delete
* more extensive logging

version 0.2.0m
* ?? fixed problem with entries marked green on boot, but not mounted (repotred by stone_ship)
* ?? fixed problem with random FC on ICS (reported by Thomas)

version 0.2.0n
* auto create target directory action moved from "bind" action to "add/edit entry" action due to possible problems when data outside "/sdcard"

version 0.2.0o
* added option to control if mount service is run as sticky

*** for now older version kept in case I broke something ***

please do not test data transfer files features on sensitive data they seem to work OK but are not throughly tested

Compiled using API android 2.3.3. Attached as self-signed development apk package. No market link for now.

important info
* Remember ! All entries must be umounted before attempting to use MASS STORAGE MODE. Application will try to do it automatically on USB CONNECT. If it fails and You'll use MASS STORAGE MODE sdcard partition WILL CRASH and reboot will be required to restore normal operations ! Main cause of that is appplication using mounted folder. You have to close that application and retry to umount entry.

* This application requires *root privileges* so it has full control over entire system! Uses root privileges to invoke "mount", "umount", "lsof" and "grep" shell commands via su and it DOES NOT write anything on system partitions.
It DOES NOT apply any permanent changes to the OS, however I cannot guarantee it does not contain BUGS and security issues. I'm not responsible to any damage it can cause. Use it AT YOUT OWN RISK !

application permissions explained
WRITE_EXTERNAL_STORAGE - application automatically creates target path, copy existing files from target to data
RECEIVE_BOOT_COMPLETED - application can perform automatic bind on boot
VIBRATE - application creates notification alert with vibrations when cannot umount all locations on USB connect
READ_LOGS - dump own logcat to file
*ROOT* - invoking "mount", "umount", "lsof" and "grep" commands via su

BUGS REPORTING
As every program can contain bugs so this one too. I'm very grateful if someone find and report a bug. No report will go unattended and I'll look into each case. There is just one thing, often report even very detailed is not enough so application has built in logging (logcat) capability - it can be enabled in Preferences.

Logcat can be dumped to file from main app window: menu -> dump logcat to file
So when reporting bug please attach that file to Your post :)

Regards !
Slig

!!! IF YOU HAVE ISSUE WITH ENTRIES DISAPPEARING AFTER REBOOT !!!
1. In preferences check "alternate dbase mgmt" and try again
2. Report in this thread with informations
- does "alternate dbase mgmt" help ?
- are you using any taskkiller
- what ROM are you using

I need to know how many people have this issue, maybe it would be good to make "alternate dbase mgmt" default mechanism.
Sorry for that but I'm still learning and doing by best to make this app as much compatible and usable as possible. This is my first public app for android ;)

Interacting application, the problem is that you did not add menu buttons and it depends on the phone's touch, it's a shame that it does not work on the blu. I will continue looking for another solution to my problem.
 

Nephatiu

Senior Member
Sep 13, 2011
81
39
Tienen
www.ggtm.eu
Interacting application, the problem is that you did not add menu buttons and it depends on the phone's touch, it's a shame that it does not work on the blu. I will continue looking for another solution to my problem.

Hey thebrazen,

Did you try holding the back button? That should normally be the menu-"button" replacement for devices that have an app-switch button instead of the menu (like Samsung OnePlus, etc...).
Actually discovered this function not so very long ago, and apparently not many people actually know about it either,... Although nobody I know knew about it and when looking for solutions, many websites tell you there isn't any,... :)

No idea if this will work on every single device that has the app-switcher instead of the menu-button, but up 'til now every one of my devices could do it. ;)

Anyway, be so kind to let me know if it works for you, that way I can verify my theory. ;)
 

bcormeay

Member
Nov 29, 2014
12
0
I have an LG Stylo 2 Plus and I can't figure out how to get this software to actually write stuff to my SD card.

I tried the default settings, but that just wrote to the emulated internal SD card.

I've tried changing it to point to my real external SD card (currently /storage/4229-19F9/), but everything I do just has it saying "Data directory not exist, create now?" with an endless loop whenever I hit "Create".

I've tried reformating my card (currently fat32), but no change.

I've created subdirectories on my SD card and tried to have it go there (thinking it might be an issue with the root folder) and that failed to do anything either.

Is there some magic method I am missing?
 

Abels2

Senior Member
Jun 12, 2017
93
37
Melilla
I have an LG Stylo 2 Plus and I can't figure out how to get this software to actually write stuff to my SD card.

I tried the default settings, but that just wrote to the emulated internal SD card.

I've tried changing it to point to my real external SD card (currently /storage/4229-19F9/), but everything I do just has it saying "Data directory not exist, create now?" with an endless loop whenever I hit "Create".

I've tried reformating my card (currently fat32), but no change.

I've created subdirectories on my SD card and tried to have it go there (thinking it might be an issue with the root folder) and that failed to do anything either.

Is there some magic method I am missing?

Install Xposed Framework and module OBB on SD
 

Porradona

New member
Jul 10, 2018
1
0
Can't finish the transfering of files

Hi! I've followed all your steps in this, but when I tick the option "transfer all files from target data" and then click "Add" it doesn't work :(. A loading bar saying it's copying the files shows up for less than a milisec and then nothing happens :( . It just stays on the same page. Only if I untick the "transfer all files from target data" it crestes the binding, but it doesn't se em to work because my memory space remains the same. :( Is it because my phone blocks transfers from internal memory to the SD card? But thats the reason why I Trier using this app the first place. Help please :(
 

Top Liked Posts

  • There are no posts matching your filters.
  • 693
    Hi all !

    This is my application to bind directories located on external_sd to directories on internal memory (/sdcard/). This way You can transfer large application data directories to external_sd. Could be usefull with ex.: games from Gameloft, other like Shadowgun, applications like CamScanner.

    screenshot:
    SC20111225-111214.png
    SC20120105-183116.png


    SC20120105-183406.png
    SC20120105-183427.png


    Features:
    * Requires ROOT !
    * Aimed at specific functionality and features (not idiot-proof)
    * You can create any number of Data -> Target directory pairs, mount them manually or choose to mount them on system boot (checkbox does that).
    * On/Off switch controls whole mount-on-boot function.
    * Diskette icon indicates if mount operation was successful, by taping it You can mount/umount entry.
    * Icon changes if application is using mounted entry
    * DirectoryBind can tell what application is using this entry (tap at entry in use)
    * Long tap on entry (disabled) brings edit/delete window
    * App auto umount all entries on USB connected and remount after USB disconnected (for now via BroadcardReceiver UMS_CONNECTED / UMS_DISCONNECTED)
    * App shows notification and vibrates if auto umount on USB fails
    * If mounting all checked entries (ex. on boot) app is waiting specified time (def. 60 sec) if data directory is not available (happens sometimes at boot)
    * Tested sucessfully with Asphalt 6, Shadowgun, DeadSpace, CamScanner

    Color statuses:
    * GRAY - entry disabled
    * RED - mount failed
    * BLUE - waiting for data availability
    * GREEN - mounted OK

    version 0.2.0k
    * fixed FC if screen orientation changes during copy/delete
    * more extensive logging

    version 0.2.0m
    * ?? fixed problem with entries marked green on boot, but not mounted (repotred by stone_ship)
    * ?? fixed problem with random FC on ICS (reported by Thomas)

    version 0.2.0n
    * auto create target directory action moved from "bind" action to "add/edit entry" action due to possible problems when data outside "/sdcard"

    version 0.2.0o
    * added option to control if mount service is run as sticky

    *** for now older version kept in case I broke something ***

    please do not test data transfer files features on sensitive data they seem to work OK but are not throughly tested

    Compiled using API android 2.3.3. Attached as self-signed development apk package. No market link for now.

    important info
    * Remember ! All entries must be umounted before attempting to use MASS STORAGE MODE. Application will try to do it automatically on USB CONNECT. If it fails and You'll use MASS STORAGE MODE sdcard partition WILL CRASH and reboot will be required to restore normal operations ! Main cause of that is appplication using mounted folder. You have to close that application and retry to umount entry.

    * This application requires *root privileges* so it has full control over entire system! Uses root privileges to invoke "mount", "umount", "lsof" and "grep" shell commands via su and it DOES NOT write anything on system partitions.
    It DOES NOT apply any permanent changes to the OS, however I cannot guarantee it does not contain BUGS and security issues. I'm not responsible to any damage it can cause. Use it AT YOUT OWN RISK !

    application permissions explained
    WRITE_EXTERNAL_STORAGE - application automatically creates target path, copy existing files from target to data
    RECEIVE_BOOT_COMPLETED - application can perform automatic bind on boot
    VIBRATE - application creates notification alert with vibrations when cannot umount all locations on USB connect
    READ_LOGS - dump own logcat to file
    *ROOT* - invoking "mount", "umount", "lsof" and "grep" commands via su

    BUGS REPORTING
    As every program can contain bugs so this one too. I'm very grateful if someone find and report a bug. No report will go unattended and I'll look into each case. There is just one thing, often report even very detailed is not enough so application has built in logging (logcat) capability - it can be enabled in Preferences.

    Logcat can be dumped to file from main app window: menu -> dump logcat to file
    So when reporting bug please attach that file to Your post :)

    Regards !
    Slig

    !!! IF YOU HAVE ISSUE WITH ENTRIES DISAPPEARING AFTER REBOOT !!!
    1. In preferences check "alternate dbase mgmt" and try again
    2. Report in this thread with informations
    - does "alternate dbase mgmt" help ?
    - are you using any taskkiller
    - what ROM are you using

    I need to know how many people have this issue, maybe it would be good to make "alternate dbase mgmt" default mechanism.
    Sorry for that but I'm still learning and doing by best to make this app as much compatible and usable as possible. This is my first public app for android ;)
    29
    Moved to "Themes and Apps" section.
    15
    How do we get this to work? I've moved my game files to my sd card on my otg cable for my nexus 7 and I've tried to mount the obb folder using this http://forum.xda-developers.com/showthread.php?t=2155363 but my games such as Asphalt still tell me to download data :/

    I haven't tested it with obb folders tbh. I just added my bind commands to the debugger.mnt file then executed remount.sh.

    (I think I'm going to release an app to make everyone's life easier. It'll have a modern GUI, intuitive layout, and compatible with 4.2.2). I'll post a link to it here once it's all finished. :good:
    7
    Later posts seems to sound like the posters are blaming or are angry with the author of the app. This is really sad.

    Anyway, I would like to answer some questions and hope that people would be more polite in the future as the author wrote the app for free and saved a lot of people time and effort. Without the app, people like me usually wrote script to mount the links and now we have nice GUI to do that. I am most thankful for the auto unmount feature. Previously when using script, I must make sure that I unmount the link before unmounting the external card (to mount to pc). If I forgot that, then the external card would later fail to bind anymore until I restart my device.

    On the version, the higher the number, the newer it is. If the number is the same, then the later alphabet is newer, meaning "b" is newer than "a".

    On the app itself, it is a frontend to perform mount/unmount, while allowing moving files automatically. So, whatever limitation you are facing is on the OS, not the app. The app helps you to move files (when creating the link), helps you mount the link (on every reboot), helps you unmount the link when your external card is unmounted (and remount it), and helps you move back the files when you delete the link. It uses mount and umount to perform the linking/unlinking process. They are commands that come with the busybox.

    On why source is the external card and the target is the original path, the author uses the parameter naming used by mount and umount. When mounting, the source is where the data is, while the target is where you want it to appear. Mount also requires that the target directory must exists and empty. If it does not exists, the mounting process would fail.

    For installing app, as long as there are sufficient space to where the OS is installing it to, it will install successfully. If it complains that there are insufficient space while there is plenty, then it has something to do with what you have done, such as rogue odex file (normally caused by cracking apps with Lucky Patcher). There are also cases where the app to be installed is at fault. This would normally be solved when the app is updated.

    So, I hope I clear up some confusion with this post and please, if you can't get any apps developed freely by generous developers to work while others have no problem, try to understand how they work and do some research before bashing the authors.

    Thanks.

    Sent from my GT-N7100 using Tapatalk 2
    6
    ...I've been living the dream ever since a ... scripter produced a solution to the FAT32 limitation on AOSP.
    I doubt that. :) Tech should be working for you, you shouldn't be working for the tech. If you ever are, you should ditch it and use something else.
    Directory Bind no longer works on 4.2 though. There are some workarounds I've been made aware of but they're very technical and I haven't tried them yet​
    BTW, there are fixes, technical is a relative term. I created a workaround to the 4.2 issue and it is what I use. I even attached my proxy wrapper at the bottom of the project so people could play with it.

    ...

    Ok, I'm going to threadjack a bit here. I'm the person who wrote that script. However, I have been informed that there would be more demand for an app like this one -- and slig has been MIA for a little over a year. When I check out Google, I see a bunch of bad instructions on blogs, and people making a bunch of incorrect statements. (Particularly regarding 4.2)

    As an example, I rebound inside data/data manually -- worked fine. It's just that this tool is broken because of the zygote-restricted-slave-mountspace bug/feature. Most of the problems seem to come from the lack of a GUI, not the lack of it being possible.

    I see a need for a New Unified Volume Daemon (NuVold). Something that is (1) GUI/Play Store based (2) portable across devices + integrates in Android Storage Manager for SD (3) mounts + repairs wacky filesystems (4) on partitioned devices (5) can rebind directories (6) softlink/install apps to SD card. [Swapping internal/external storage is not needed (and pointless) if something can do (5) and (6) in a user-friendly way.]

    Currently, multiple utilities do each in a semi-broken and nonconsistent way. (Paragon broken on 4.2, my script can sorta do 2-5 but via command line, Directory Rebind broken, ExtSd2InternalSd hijacks mount at boot...)

    Essentially, I am proposing a merger of my "fuse-mountsd", "Super APP2SD", "Directory Rebind", "Paragon's FS App" (the execution, not the proprietary stuff), "StickMount", "ntfs-3g", and "exfat-fuse". This is possible, but would require a lot of work. Plus there's no way you could charge for it, given all the chefs.