-
Notifications
You must be signed in to change notification settings - Fork 473
Implement Gecko-based DownloadManager #1968
Comments
Now that we have the GV APIs, would be great to have an idea of the size of this work. The goal is to oerform Downloads through GeckoView so we can get support for Cookies and allow for protected downloads (e.g. Bank statements). |
With our current sizing definitely an L. This can vary in scope depending on how far we want to go on a "it works" to "deluxe solution" scale. For example:
|
Currently this is blocked on a GV API: Bug 1530022 |
@NotWoods This is the deluxe version where we take over a download from GeckoView. Right now we could still implement this by issuing a new request via concept-fetch. At the time of calling that delegate Gecko(view) has already cancelled the its own download progress. |
(The same we would need to do when re-trying) |
In this version, do we also want to store data about performed downloads so that Fenix can expose that in its library or do we just hand of completed downloads to Android's download manager to display it there?
In this version, do we want to support retrying failed downloads? -No but let's track it as a separate issue under the Download meta. In this version, do we want to support pausing downloads? -No but let's track it as a separate issue under the Download meta. |
@NotWoods - Do you still need GV to pass the WebResponse to ContentDelegate.onExternalResponse? This is GV bug https://bugzilla.mozilla.org/show_bug.cgi?id=1530022. |
As snorp said, it's good enough for now to make a second request to Gecko. Having access to the |
Let's file AC follow-ups though (if we haven't already?):
|
…DownloadManager X-Channel-Revision: [main] mozilla-mobile/android-components@cf522a7 X-Channel-Revision: [main] mozilla-mobile/fenix@20b25d7 X-Channel-Revision: [main] mozilla-mobile/focus-android@29486b8 X-Channel-Converted-Revision: [ac-prep] mozilla-mobile/firefox-android@0ef484b
…DownloadManager X-Channel-Revision: [main] mozilla-mobile/android-components@cf522a7 X-Channel-Revision: [main] mozilla-mobile/fenix@20b25d7 X-Channel-Revision: [main] mozilla-mobile/focus-android@29486b8 X-Channel-Converted-Revision: [ac-prep] mozilla-mobile/firefox-android@0ef484b
…DownloadManager X-Channel-Revision: [main] mozilla-mobile/android-components@cf522a7 X-Channel-Revision: [main] mozilla-mobile/fenix@20b25d7 X-Channel-Revision: [main] mozilla-mobile/focus-android@29486b8 X-Channel-Converted-Revision: [ac-prep] mozilla-mobile/firefox-android@0ef484b
…DownloadManager X-Channel-Revision: [main] mozilla-mobile/android-components@cf522a7 X-Channel-Revision: [main] mozilla-mobile/fenix@20b25d7 X-Channel-Revision: [main] mozilla-mobile/focus-android@29486b8 X-Channel-Converted-Revision: [ac-prep] mozilla-mobile/firefox-android@0ef484b
…DownloadManager X-Channel-Revision: [main] mozilla-mobile/android-components@cf522a7 X-Channel-Revision: [main] mozilla-mobile/fenix@20b25d7 X-Channel-Revision: [main] mozilla-mobile/focus-android@29486b8 X-Channel-Converted-Revision: [ac-prep] mozilla-mobile/firefox-android@0ef484b
…DownloadManager X-Channel-Revision: [main] mozilla-mobile/android-components@cf522a7 X-Channel-Revision: [main] mozilla-mobile/fenix@20b25d7 X-Channel-Revision: [main] mozilla-mobile/focus-android@29486b8 X-Channel-Converted-Revision: [ac-prep] mozilla-mobile/firefox-android@0ef484b
…DownloadManager X-Channel-Revision: [main] mozilla-mobile/android-components@cf522a7 X-Channel-Revision: [main] mozilla-mobile/fenix@20b25d7 X-Channel-Revision: [main] mozilla-mobile/focus-android@29486b8 X-Channel-Converted-Revision: [ac-prep] mozilla-mobile/firefox-android@0ef484b
…DownloadManager X-Channel-Revision: [main] mozilla-mobile/android-components@cf522a7 X-Channel-Revision: [main] mozilla-mobile/fenix@20b25d7 X-Channel-Revision: [main] mozilla-mobile/focus-android@29486b8 X-Channel-Converted-Revision: [ac-prep] mozilla-mobile/firefox-android@0ef484b
…DownloadManager X-Channel-Revision: [main] mozilla-mobile/android-components@cf522a7 X-Channel-Revision: [main] mozilla-mobile/fenix@20b25d7 X-Channel-Revision: [main] mozilla-mobile/focus-android@29486b8 X-Channel-Converted-Revision: [ac-prep] mozilla-mobile/firefox-android@0ef484b
…DownloadManager X-Channel-Revision: [main] mozilla-mobile/android-components@cf522a7 X-Channel-Revision: [main] mozilla-mobile/fenix@20b25d7 X-Channel-Revision: [main] mozilla-mobile/focus-android@29486b8 X-Channel-Converted-Revision: [ac-prep] mozilla-mobile/firefox-android@0ef484b
…DownloadManager X-Channel-Revision: [main] mozilla-mobile/android-components@cf522a7 X-Channel-Revision: [main] mozilla-mobile/fenix@20b25d7 X-Channel-Revision: [main] mozilla-mobile/focus-android@29486b8 X-Channel-Converted-Revision: [ac-prep] mozilla-mobile/firefox-android@0ef484b
…DownloadManager X-Channel-Revision: [main] mozilla-mobile/android-components@cf522a7 X-Channel-Revision: [main] mozilla-mobile/fenix@20b25d7 X-Channel-Revision: [main] mozilla-mobile/focus-android@29486b8 X-Channel-Converted-Revision: [ac-prep] mozilla-mobile/firefox-android@0ef484b
…DownloadManager X-Channel-Revision: [main] mozilla-mobile/android-components@cf522a7 X-Channel-Revision: [main] mozilla-mobile/fenix@20b25d7 X-Channel-Revision: [main] mozilla-mobile/focus-android@29486b8 X-Channel-Converted-Revision: [ac-prep] mozilla-mobile/firefox-android@0ef484b
…DownloadManager X-Channel-Revision: [main] mozilla-mobile/android-components@cf522a7 X-Channel-Revision: [main] mozilla-mobile/fenix@20b25d7 X-Channel-Revision: [main] mozilla-mobile/focus-android@29486b8 X-Channel-Converted-Revision: [ac-prep] mozilla-mobile/firefox-android@0ef484b
…DownloadManager X-Channel-Revision: [main] mozilla-mobile/android-components@cf522a7 X-Channel-Revision: [main] mozilla-mobile/fenix@20b25d7 X-Channel-Revision: [main] mozilla-mobile/focus-android@29486b8 X-Channel-Converted-Revision: [ac-prep] mozilla-mobile/firefox-android@0ef484b
…DownloadManager X-Channel-Revision: [main] mozilla-mobile/android-components@cf522a7 X-Channel-Revision: [main] mozilla-mobile/fenix@20b25d7 X-Channel-Revision: [main] mozilla-mobile/focus-android@29486b8 X-Channel-Converted-Revision: [ac-prep] mozilla-mobile/firefox-android@0ef484b
…DownloadManager X-Channel-Revision: [main] mozilla-mobile/android-components@cf522a7 X-Channel-Revision: [main] mozilla-mobile/fenix@20b25d7 X-Channel-Revision: [main] mozilla-mobile/focus-android@29486b8 X-Channel-Converted-Revision: [ac-prep] mozilla-mobile/firefox-android@0ef484b
…DownloadManager X-Channel-Revision: [main] mozilla-mobile/android-components@cf522a7 X-Channel-Revision: [main] mozilla-mobile/fenix@20b25d7 X-Channel-Revision: [main] mozilla-mobile/focus-android@29486b8 X-Channel-Converted-Revision: [ac-prep] mozilla-mobile/firefox-android@0ef484b
…DownloadManager X-Channel-Revision: [main] mozilla-mobile/android-components@cf522a7 X-Channel-Revision: [main] mozilla-mobile/fenix@20b25d7 X-Channel-Revision: [main] mozilla-mobile/focus-android@29486b8 X-Channel-Converted-Revision: [ac-prep] mozilla-mobile/firefox-android@0ef484b
…DownloadManager X-Channel-Revision: [main] mozilla-mobile/android-components@cf522a7 X-Channel-Revision: [main] mozilla-mobile/fenix@20b25d7 X-Channel-Revision: [main] mozilla-mobile/focus-android@29486b8 X-Channel-Converted-Revision: [ac-prep] mozilla-mobile/firefox-android@0ef484b
We want:
Soon we are going to have:
Rough outline of work required:
Exposing the stream in
Download
:concept-fetch
Response
object.browser-engine-gecko-*
component wrap theWebResponse
in aconcept-fetch
Response
(That's what Create GeckoView implementation of concept-fetch #1328 should get us) and pass that toDownload
Write a custom
DownloadManager
to be used byfeature-downloads
┆Issue is synchronized with this Jira Task
The text was updated successfully, but these errors were encountered: