Lines Matching full:applications
215 <li> Column restrictions, such that only a small number of the download provider's columns can be read or queried by applications.
222 structured), but the second one relies on arbitrary strings (URIs and SQL fragments) passed by applications and is therefore at a
231 <tr><td > <code>_DATA</code> </td><td > Probably should not be visible to applications. <b>WARNING</b> Security concern: This holds filenames, including those of private files. While file permissions are supposed to kick in and protect the files, hiding private filenames deeper in would probably be a reasonable idea. </td></tr>
247 The <code>URI</code> column is visible to the initiating application, which is a mild security risk. It should be hidden, but the OTA update mechanism relies on it to check duplicate downloads and to display the download that's currently ongoing in the settings app. If another string column was exposed to the initiating applications, the OTA update mechanism could use that one, and <code>URI</code> could then be hidden. For Cupcake, without changing the database schema, the <code>ENTITY</code> column could be re-used as it's currently unused.
260 If the <code>URI</code> column gets hidden, it could be used to store the intermediate URIs. After 1.0 the only available integer columns were <code>METHOD</code> and <code>CONTROL</code>. <code>CONTROL</code> was re-exposed to applications and can't be used. <code>METHOD</code> is slated to be re-used for 503 retry-after delays. It could be split into two halves, one for retry-after and one for the redirect count. It would make more sense to count the redirect loop with <code>FAILED_CONNECTIONS</code>, but since there's already quite some code using it it'd take a bit more effort. Ideally handling of redirects would be delayed until a future release, with a cleanup of the database schema (going along with the cleanup of the handling of filenames).
272 Right now <code>OTHER_UID</code> is used by checkin/update to allow the settings app to display the name of an ongoing OTA update, and by Market to allow the system to install the new apks. It is however a dangerous feature, at least because it touches a part of the code that is critical to the download manager security (separation of applications).
299 <!--There are enough common requirements between the various applications that need to perform reliable background downloads that implementing a centralized download manager is more cost-effective than having each application implement their own subset of the overall feature set.-->
318 <tr><td > 1001 </td><td > 1.0 <b>YES</b> </td><td > </td><td > Download Manager API </td><td > The download manager provides an API that allows applications to initiate downloads. </td><td > </td></tr>
319 <tr><td > 1002 </td><td > 1.0 <b>YES</b> </td><td > </td><td > Cookies </td><td > The download manager API allows applications to pass cookies to the download manager. </td><td > </td></tr>
320 <tr><td > 1003 </td><td > 1.0 <b>YES</b> </td><td > </td><td > Security </td><td > The download manager provides a mechanism that prevents arbitrary applications from accessing meta-data about current and past downloads. </td><td > In 1.0, known holes between apps </td></tr>
343 <tr><td > 3003 </td><td > 1.0 <b>YES</b> </td><td > </td><td > Destination File Permissions </td><td > The download manager restricts access to the internal storage to applications with the appropriate permissions </td><td > </td></tr>
467 <li> Download Manager depends on the ability to associate individual downloads with separate applications and to restrict apps to only access their own downloads.
480 The various constants that are meant to be used by applications are all defined in the <code>android.provider.Downloads</code> class. Whenever possible, the constants should be used instead of the explicit values.
486 <tr><td > <code>Downloads.PERMISSION_ACCESS</code> </td><td > <code>"android.permission.ACCESS_DOWNLOAD_MANAGER"</code> </td><td > Signature or System </td><td > Applications that want to access the Download Manager MUST have this permission. </td></tr>
487 <tr><td > <code>Downloads.PERMISSION_ACCESS_ADVANCED</code> </td><td > <code>"android.permission.ACCESS_DOWNLOAD_MANAGER_ADVANCED"</code> </td><td > Signature or System </td><td > This permission protects some legacy APIs that new applications SHOULD NOT use. </td></tr>
488 <tr><td > <code>Downloads.PERMISSION_CACHE</code> </td><td > <code>"android.permission.ACCESS_CACHE_FILESYSTEM"</code> </td><td > Signature </td><td > This permission allows an app to access the /cache filesystem, and is only needed by the Update code. Other applications SHOULD NOT use this permission </td></tr>
489 <tr><td > <code>Downloads.PERMISSION_SEND_INTENTS</code> </td><td > <code>"android.permission.SEND_DOWNLOAD_COMPLETED_INTENTS"</code> </td><td > Signature </td><td > The download manager holds this permission, and the receivers through which applications get intents of completed downloads SHOULD require this permission from the sender </td></tr>
494 The primary interface that applications use to communicate with the download manager is exposed as a ContentProvider.
635 <li> Minor differences unlikely to affect applications:
703 <li> Applications can now pause their downloads
742 The download manager is built primarily around a ContentProvider and a Service. The ContentProvider part is the front end, i.e. applications communicate with the download manager through the provider. The Service part is the back end, which contains the actual download logic, running as a background process.
746 The service is a background process that performs the actual downloads as requested by the applications. The service doesn't offer any bindable interface, the service object exists strictly so that the system knows how to prioritize the download manager's process against other processes when memory is tight.
762 Lexer takes care of validating the snippets of SQL data that are received from applications, to avoid cases of SQL injection.
872 <li> Give applications the ability to explicitly specify the full target filename (not just a hint).
874 <li> Give applications the ability to download multiple files into multiple set locations as if they were a single "package".
876 <li> Give applications the ability to download files only if they haven't been already downloaded.
878 <li> Give applications the ability to download files that have already been downloaded only if there's a newer version.
1128 <li> <em>[DownloadService.java]</em> Factor the code that notifies applications into a separate function (codepath with early 406 failure)