rushiiMachine
cb7bb308d0
fix(PatchingScreenModel): handle patch runner errors & cancellations properly
2024-08-03 23:26:16 -07:00
Crowdin Bot
3cd27f7c9c
chore(i18n): sync translations
2024-08-04 04:51:13 +00:00
rushiiMachine
eb27a5f032
style: reformat
2024-08-03 21:48:52 -07:00
rushiiMachine
2d3247e4b8
feat(PMInstaller): wait for uninstalls & fix PM session lifecycle bugs
...
- Support waiting for package uninstallation results
- Make DowngradeCheckStep wait for uninstall rather than erroring
- Relaunch PackageInstaller user action intents infinitely until result received (Workaround of bug on some ROMs where dismissing the PI dialog by clicking outside wouldn't invoke the callback with STATUS_FAILURE_ABORTED)
- Make PMIntentReceiver & PMResultReceiver non-exported to keep intents from leaking to other apps
- Handle uncaught exceptions thrown in the aforementioned receivers by returning the result back to the app (or logging) to prevent crashes
2024-08-03 21:47:08 -07:00
Crowdin Bot
4ac24fe806
chore(i18n): sync translations
2024-08-03 17:17:53 +00:00
rushiiMachine
57ade5a71c
refactor(KtorDownloader): reuse buffers
...
Reduce memory usage caused by new buffers for every body read
2024-08-02 12:04:33 -07:00
rushiiMachine
9759fbd13b
feat(Http): set proper User-Agent
2024-08-01 19:49:25 -07:00
rushiiMachine
304b634fa5
feat(PMInstaller): disable silent installs on MIUI
...
Copy behavior of PM installers from other projects
2024-08-01 19:48:50 -07:00
rushiiMachine
98c0a2e22d
feat: Ktor download manager
...
Using the system DownloadManager on some emulators causes a very odd SSL bug linked to compression, which is impossible to disable on Android's DownloadManager requests due to the Accept-Encoding header always being overwritten.
This commit creates a generic download manager interface for which there is an Android DownloadManager wrapper (like before) in addition to a Ktor wrapper (which disables compression)
2024-08-01 19:33:07 -07:00
rushiiMachine
f736062a93
refactor: rename install -> patching
...
"installer" conflicted with "installers", use different term
2024-07-31 16:46:22 -07:00
rushiiMachine
8d295979be
refactor: clean up usages of ~/Aliucord
2024-07-31 15:39:04 -07:00
Crowdin Bot
0cdf2ee743
chore(i18n): sync translations
2024-07-31 21:50:35 +00:00
rushiiMachine
e4eddf7c89
feat(installer): Store install metadata in APK
2024-07-31 14:49:42 -07:00
rushiiMachine
c5eded4f63
feat: better cancelled install flow
2024-07-31 13:54:55 -07:00
rushiiMachine
3ec7412c54
feat(Navigator): custom transitions
2024-07-31 13:54:04 -07:00
Crowdin Bot
f1ed559bb1
chore(i18n): sync translations
2024-07-20 17:17:45 +00:00
Enova
6b3da4f07e
fix(ManifestPatcher): add vmSafeMode manifest attribute ( #73 )
...
On certain ROMs like GrapheneOS with agressive dexopt settings, the current method of deleting ART profiles upon startup does not work as dexopt runs right after app installation. This code cache would then be deletable only via ADB or root.
2024-06-16 16:43:36 -07:00
Crowdin Bot
0271511e92
chore(i18n): sync translations
2024-05-19 21:28:20 +00:00
rushii
7156f085ae
feat: improve install screen UI ( #69 )
2024-05-19 14:27:35 -07:00
rushiiMachine
6e1636873c
feat(HomeScreen): remove list end indicator
2024-05-19 14:21:43 -07:00
rushiiMachine
45d9b0a3c6
feat: delete cache if patching fails
2024-05-19 13:42:42 -07:00
rushiiMachine
f51e9bb965
perf(UnsafeImmutables): inline util functions
2024-05-19 13:41:45 -07:00
Crowdin Bot
56878cebb6
chore(i18n): sync translations
2024-05-18 17:16:09 +00:00
Crowdin Bot
5d7d7b147e
chore(i18n): sync translations
2024-05-16 17:58:11 +00:00
rushii
afba80fe4b
feat: handle play protect ( #72 )
2024-05-16 10:57:11 -07:00
rushiiMachine
8898856766
chore(deps): update binary-resources
...
v2.0.0 is significantly more memory efficient
2024-04-08 17:26:03 -07:00
Crowdin Bot
54b215fe66
chore(i18n): sync translations
2024-03-30 17:15:17 +00:00
Crowdin Bot
565fe8c1c3
chore(i18n): sync translations
2024-03-23 17:16:04 +00:00
rushiiMachine
e2c9472ce8
fix: make InstallOptions serializable
2024-03-16 11:19:57 -07:00
Crowdin Bot
932c583f9e
chore(i18n): sync translations
2024-03-16 17:17:10 +00:00
rushii
ce7f726ee8
feat: new icon patcher ( #71 )
2024-03-15 16:26:58 -07:00
rushiiMachine
4b820e594e
feat: live time elapsed display on install steps
2024-03-10 22:41:09 -07:00
Crowdin Bot
bd5bc39d41
chore(i18n): sync translations
2024-03-10 08:05:45 +00:00
rushiiMachine
be422f01a2
feat: prompt to disable battery optimization + warning on install screen
2024-03-10 00:04:51 -08:00
Crowdin Bot
02076f0697
chore(i18n): sync translations
2024-03-09 17:17:00 +00:00
Crowdin Bot
3c5877501b
chore(i18n): sync translations
2024-03-06 19:28:04 +00:00
rushiiMachine
5ddd74be38
feat: send notifs when install ready if backgrounded
2024-03-06 11:26:55 -08:00
rushiiMachine
21d4d57975
fix: make screen data serializable
...
Otherwise crash would occur when app is backgrounded
2024-03-05 10:16:44 -08:00
rushiiMachine
f33cb691cf
feat(HomeScreen): minor layout adjustments
2024-03-04 12:08:06 -08:00
Crowdin Bot
9e808572a5
chore(i18n): sync translations
2024-03-04 08:46:18 +00:00
rushiiMachine
b5c6f4fb54
feat(HomeScreen): indicate when no installations
2024-03-04 00:45:18 -08:00
rushiiMachine
52e24e742e
feat: more release optimizations
2024-03-04 00:44:38 -08:00
rushiiMachine
0d8a04af62
feat(InstallScreen): prevent autoclosing if interacted with
2024-03-03 20:21:31 -08:00
rushiiMachine
1b1316d4dc
feat(InstallScreen): use wakelock while running
2024-03-02 16:43:35 -08:00
rushiiMachine
82096adcc3
fix(DownloadInjectorStep): file cached to wrong location
2024-03-02 16:43:35 -08:00
Crowdin Bot
b4ae07717c
chore(i18n): sync translations
2024-03-02 17:15:18 +00:00
rushiiMachine
40fd1b262c
feat(InstallOptions): make screen scrollable
2024-02-28 20:02:53 -08:00
Crowdin Bot
abefe7c37c
chore(i18n): sync translations
2024-02-17 17:17:46 +00:00
Crowdin Bot
53b690bdcb
chore(i18n): sync translations
2024-02-10 02:29:21 +00:00
rushii
9d6cdf24da
feat: add install options screen ( #70 )
2024-02-09 18:28:32 -08:00