Special protocol

The "Special Protocol" is Kodi's solution to platform dependent directories. Common directory names are assigned a special://[name] path which is passed around inside Kodi and then translated to the platform specific path before the operating system sees it. This helps keep most of the platform mess centralized in the code.

Default OS mappings

 * Bulleted list item

Android

 * special://xbmc - /data/data/org.xbmc.kodi/cache/apk/assets/
 * special://home - /sdcard/Android/data/org.xbmc.kodi/files/.kodi/
 * special://temp - /sdcard/Android/data/org.xbmc.kodi/files/.kodi/temp/

iOS

 * Apple TV 2 (black)
 * special://xbmc - /private/var/stash/Applications/Kodi.frappliance/KodiData/KodiHome
 * special://home - /private/var/mobile/Library/Preferences/Kodi
 * special://temp - /private/var/mobile/Library/Preferences/Kodi/temp


 * iDevice
 * special://xbmc - /Applications/Kodi.app/KodiData/KodiHome <- Symbolic link, but the real path has some random characters in it.
 * special://home - /private/var/mobile/Library/Preferences/Kodi
 * special://temp - private/var/mobile/Library/Preferences/Kodi/temp

Linux

 * special://xbmc - /usr/share/kodi when installed from a binary package (ie PPA, rpm, deb, etc). /usr/local/share/kodi when compiled (unless you specify an alternate prefix)
 * special://home - /home/[username]/.kodi

Mac OS X

 * special://xbmc - /Applications/Kodi.app/Contents/Resources/Kodi
 * special://home - /Users/[username]/Library/Application Support/Kodi
 * special://temp - /Users/[username]/.kodi/temp

Windows
This assumes your Windows install drive is C:. Replace as necessary.
 * special://xbmc - C:\Program Files\Kodi
 * special://xbmc - C:\Program Files (x86)\Kodi (Windows 64 bit)
 * special://home - C:\Users\[username]\AppData\Roaming\Kodi

In portable mode, Kodi is entirely self contained, so its install directory must be writable.
 * Portable Mode
 * special://xbmc - Where ever you installed Kodi (MUST be writable).
 * special://home - special://xbmc