Commit a6f6b90
committed
Refactor Shizuku installer to use shell commands instead of reflection
- Replace fragile reflection-based `PackageInstaller` session logic with `pm install` and `pm uninstall` shell commands
- Implement APK streaming to `pm install` via stdin pipe using `ParcelFileDescriptor`
- Offload blocking AIDL installation and uninstallation calls to IO dispatchers/background threads to prevent ANRs
- Simplify error handling and status mapping by relying on process exit codes and output strings
- Update file descriptor mode from `READ_WRITE` to `READ_ONLY` for installation source files1 parent 541614a commit a6f6b90
2 files changed
Lines changed: 92 additions & 405 deletions
File tree
- core/data/src/androidMain/kotlin/zed/rainxch/core/data/services/shizuku
0 commit comments