# eDrive eDrive is a persitent application provided by default with /e/OS. It synchronizes user's data files to /e/Cloud or a self-hosted cloud. ## Install Since the application is persistent, you won't be able to reinstall the app with a regular `adb install -r` command. You will have to allow root debugging in the Developer Options, then `adb root && adb remount`, then `adb push eDrive.apk /system/app/eDrive/eDrive.apk` and finally `adb reboot`. ## Map of synced directories | device | cloud | category | | ------------------------------------ | -------------------------------------- | ------------ | | /storage/emulated/0/DCIM | /Photos | Images | | /storage/emulated/0/Pictures | /Pictures | Images | | /storage/emulated/0/Movies | /Movies | Movies | | /storage/emulated/0/Music | /Music | Music | | /storage/emulated/0/Ringtones | /Ringtones | Ringtones | | /storage/emulated/0/Documents | /Documents | Documents | | /storage/emulated/0/Podcasts | /Podcasts | Podcasts | | /data/system/users/0/ | /Devices/\/rom_settings/ | Rom settings | | /data/data/foundation.e.drive/files/ | /Devices/\/rom_settings/app_list/ | Rom settings | All remote directories are created by eDrive if needed. ## Notes ### How it works When you register an /e/account the synchronization is enabled by default. The synchronization is done on `ACTION_SCREEN_OFF` intent if the last sync is greater than 15 min. Otherwise a sync is scheduled each 30 min. ### Settings To enable/disable the synchronisation, go into your account settings: * Application settings (Rom settings) * Pictures and videos (Images, Movies, Music, Ringtones, Documents and Podcasts) # Interrobility eDrive can also receive some broadcast intent for different purprose: **Force the synchronization.** ```bash adb shell am broadcast -a foundation.e.drive.action.FORCE_SYNC --receiver-include-background ``` **Generate a database dump accessible by the user** ```bash adb shell am broadcast -a foundation.e.drive.action.DUMP_DATABASE --receiver-include-background ``` **Disable log limit on release build** ```bash adb shell am broadcast -a foundation.e.drive.action.FULL_LOG_ON_PROD --receiver-include-background --ez full_log_enable true ``` **Limit log output on release build** *(after previous command)* ```bash adb shell am broadcast -a foundation.e.drive.action.FULL_LOG_ON_PROD --receiver-include-background --ez full_log_enable false ```