FileProvider is a special subclass of ContentProvider that facilitates secure sharing of files associated with an app by creating a content:// Uri for a file instead of a file:/// Uri.. A content URI allows you to grant read and write access using temporary access permissions. When you create an Intent containing a content URI, in order to send the content URI to a client app, you can also Bundle: call(String arg0, String arg1, Bundle arg2). Jun 13, · I was using the DocumentPicker API to fetch and upload files to a certain server, it's working on iOS but on android the URI returned isn't the same as iOS. Apr 16, · I have a PreferenceFragment that implements a custom Preference that I've extended. It launches an intent that returns a selected image from the filesystem. Everything works fine, mostly. The Preference sets the image thumbnail in the preferences view and grabs the display name to set as the preference summary. The URI string persists as it. Because from android KitKat (sdk version 19), the system returned uri is not real local file path uri, it is a content provider style uri, so we should parse the uri and get the real file local path by query related content provider (image provider, audio provider, video provider and document provider). Jan 31, · Downloading Files in Android: In Android version Gingerbread (API level 9), a new service was added to android OS "DownloadManager" specially for the purpose of downloading files throughout HTTP requests. It automatically manages the Progress bar in Notification, large sized Files, Retry Download if fail or even after the device reboots.