* Switch connectivitycheck URL to HTTPS as cleartext communication is disabled
* Use GlobalScope to verify and setup proxy URL
* Ignore proxy setup in HttpClient if its empty
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
* External storage download uses external files directory and not the SD card
to downloads while the description states otherwise. This is in-accurate and
thus dropped (See #985).
* Custom download path is broken which was implemented as a workaround for the
above (See #1003).
* Move downloads storage to internal files directory which is sandboxed and only
accessible to us.
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
Treat Aurora Store as a normal app for non-fdroid builds and check
for its updates based on auto-update preference.
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
SplashFragment always removes itself from backstack in every other case, do same
when launching the app detail page to handle intents as well.
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
WorkManager downloads can fail due to n number of reason. Regardless of the reason
there might be not enough time to mark the download as failed within the worker
causing the download to keep the status as downloading on next startup, thus blocking
the queue.
Always check for downloads with downloading status on init and cancel them if work
manager cannot find atleast one ongoing work for it.
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
We don't want to cancel all downloads when user requests to cancel only updates.
Also, update the download's status to cancelled atomically.
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
This is useful when an active download is stuck which could happen if the app
was force stopped by user or killed by Android.
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
* Check for fdroid basic as install source as well
* Check for fdroid.org as organization name in signing certificate attribute
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
If a user has incompatible updates turned on, show them updates which fails
certificate verification as well.
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
The new setRequestUpdateOwnership() method allows us to indicate to the system that we intend to be responsible for future updates to an app it is installing.
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
Not used anywhere nor working with rework. Needs to be implemented properly
before adding again.
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
Session, Shizuku and Root Installer are supported for now. Native and Aurora Services
have been deprecated and won't be supported. App Manager might support it or it will
be deprecated as well (if it doesn't).
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
Switch from args to arguments as the current one caches the old
value and returns it again on creation.
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
This requests user's confirmation before uninstallation every time which
is what we want to happen as well.
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
This would be useful for self-updates when they get downloaded but user
isn't automatically installed.
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
This results in their state never being updated when passed to menu fragment.
Store the ongoing downloads in a list and find it when required using the
package name instead.
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
Switch to LinearProgressIndicator where possible and show an indeterminate
progress bar while download progress is below 1%
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>