0x192 / 0x192/universal-android-debloater
"Extract APK" button when selecting
- Lenguaje dominante
- Rust
- Estrellas
- 19.9k
- Forks
- 1.1k
- Métricas de merge de PR
- Sin PR fusionados en 30 d
Descripción
**Describe the feature you want**
UAB should have an "Extract APK" for selected packages. The APKs would be sent to a folder called "Extracted APKs", with names like "\ - \.apk". A .txt log file would also be included, with a list of the extracted packages, their full path and the date and time they were extracted at.
**Equivalent commands**
Currently and AFAIK, APKs can be manually estracted using `adb shell` from non-root folders (/vendor/, for example, is restricted on unrooted devices) with a series of commands.
```
> adb shell pm list packages | findstr "facebook"
> adb shell pm path com.facebook.katana
> adb pull "/data/app/~~dBkYfgsVvQqPra3sFTkhqA==/com.facebook.katana-M00C7ILnQ-09CKYb4D5_uQ==/base.apk" "Extracted APKs/base - com.facebook.katana.apk"
> adb pull "/data/app/~~dBkYfgsVvQqPra3sFTkhqA==/com.facebook.katana-M00C7ILnQ-09CKYb4D5_uQ==/split_arservicesoptional.apk" "Extracted APKs/split_arservicesoptional - com.facebook.katana.apk"
[…]
```
**Example log file:** `C:\Android\UAB\Extracted APKS\Extracted APKs.txt`
```
UAB EXTRACTED APKS
# Extracted 21 files at at 2025-06-29T15:38:02+02:00
Package name: com.facebook.katana
Extracted files:
- C:/Android/UAB/Extracted APKs/base.apk
- C:/Android/UAB/Extracted APKs/split_arservicesoptional.apk
- C:/Android/UAB/Extracted APKs/split_cgnativeplayer.apk
- C:/Android/UAB/Extracted APKs/split_cgwebrtc.apk
- C:/Android/UAB/Extracted APKs/split_heliumcore.apk
- C:/Android/UAB/Extracted APKs/split_heliumiab.apk
- C:/Android/UAB/Extracted APKs/split_i18n_it_IT.apk
- C:/Android/UAB/Extracted APKs/split_instantgames.apk
- C:/Android/UAB/Extracted APKs/split_instantgamesads.apk
- C:/Android/UAB/Extracted APKs/split_papaya.apk
- C:/Android/UAB/Extracted APKs/split_papayaanalyticstorch.apk
- C:/Android/UAB/Extracted APKs/split_papayatorch.apk
- C:/Android/UAB/Extracted APKs/split_photo3djni.apk
- C:/Android/UAB/Extracted APKs/split_pytorch.apk
- C:/Android/UAB/Extracted APKs/split_s_arservicesoptional_slam.apk
- C:/Android/UAB/Extracted APKs/split_s_papayaanalyticstorch_papayatorch.apk
- C:/Android/UAB/Extracted APKs/split_s_papayaanalyticstorch_papayatorch_torchedlooper.apk
- C:/Android/UAB/Extracted APKs/split_s_papayatorch_torchedlooper.apk
- C:/Android/UAB/Extracted APKs/split_s_smartcropnative_smartplacementnative.apk
- C:/Android/UAB/Extracted APKs/split_s_smartcropnative_smartplacementnative_smarttrim.apk
- C:/Android/UAB/Extracted APKs/split_smartcropnative.apk
Original paths:
- /data/app/~~dBkYfgsVvQqPra3sFTkhqA==/com.facebook.katana-M00C7ILnQ-09CKYb4D5_uQ==/base.apk
- /data/app/~~dBkYfgsVvQqPra3sFTkhqA==/com.facebook.katana-M00C7ILnQ-09CKYb4D5_uQ==/split_arservicesoptional.apk
- /data/app/~~dBkYfgsVvQqPra3sFTkhqA==/com.facebook.katana-M00C7ILnQ-09CKYb4D5_uQ==/split_cgnativeplayer.apk
- /data/app/~~dBkYfgsVvQqPra3sFTkhqA==/com.facebook.katana-M00C7ILnQ-09CKYb4D5_uQ==/split_cgwebrtc.apk
- /data/app/~~dBkYfgsVvQqPra3sFTkhqA==/com.facebook.katana-M00C7ILnQ-09CKYb4D5_uQ==/split_heliumcore.apk
- /data/app/~~dBkYfgsVvQqPra3sFTkhqA==/com.facebook.katana-M00C7ILnQ-09CKYb4D5_uQ==/split_heliumiab.apk
- /data/app/~~dBkYfgsVvQqPra3sFTkhqA==/com.facebook.katana-M00C7ILnQ-09CKYb4D5_uQ==/split_i18n_it_IT.apk
- /data/app/~~dBkYfgsVvQqPra3sFTkhqA==/com.facebook.katana-M00C7ILnQ-09CKYb4D5_uQ==/split_instantgames.apk
- /data/app/~~dBkYfgsVvQqPra3sFTkhqA==/com.facebook.katana-M00C7ILnQ-09CKYb4D5_uQ==/split_instantgamesads.apk
- /data/app/~~dBkYfgsVvQqPra3sFTkhqA==/com.facebook.katana-M00C7ILnQ-09CKYb4D5_uQ==/split_papaya.apk
- /data/app/~~dBkYfgsVvQqPra3sFTkhqA==/com.facebook.katana-M00C7ILnQ-09CKYb4D5_uQ==/split_papayaanalyticstorch.apk
- /data/app/~~dBkYfgsVvQqPra3sFTkhqA==/com.facebook.katana-M00C7ILnQ-09CKYb4D5_uQ==/split_papayatorch.apk
- /data/app/~~dBkYfgsVvQqPra3sFTkhqA==/com.facebook.katana-M00C7ILnQ-09CKYb4D5_uQ==/split_photo3djni.apk
- /data/app/~~dBkYfgsVvQqPra3sFTkhqA==/com.facebook.katana-M00C7ILnQ-09CKYb4D5_uQ==/split_pytorch.apk
- /data/app/~~dBkYfgsVvQqPra3sFTkhqA==/com.facebook.katana-M00C7ILnQ-09CKYb4D5_uQ==/split_s_arservicesoptional_slam.apk
- /data/app/~~dBkYfgsVvQqPra3sFTkhqA==/com.facebook.katana-M00C7ILnQ-09CKYb4D5_uQ==/split_s_papayaanalyticstorch_papayatorch.apk
- /data/app/~~dBkYfgsVvQqPra3sFTkhqA==/com.facebook.katana-M00C7ILnQ-09CKYb4D5_uQ==/split_s_papayaanalyticstorch_papayatorch_torchedlooper.apk
- /data/app/~~dBkYfgsVvQqPra3sFTkhqA==/com.facebook.katana-M00C7ILnQ-09CKYb4D5_uQ==/split_s_papayatorch_torchedlooper.apk
- /data/app/~~dBkYfgsVvQqPra3sFTkhqA==/com.facebook.katana-M00C7ILnQ-09CKYb4D5_uQ==/split_s_smartcropnative_smartplacementnative.apk
- /data/app/~~dBkYfgsVvQqPra3sFTkhqA==/com.facebook.katana-M00C7ILnQ-09CKYb4D5_uQ==/split_s_smartcropnative_smartplacementnative_smarttrim.apk
- /data/app/~~dBkYfgsVvQqPra3sFTkhqA==/com.facebook.katana-M00C7ILnQ-09CKYb4D5_uQ==/split_smartcropnative.apk
```
**Side request**
It would be helpful to visualize the app name inside of the main UAB screen.
Guía de contribución
No hay ninguna guía de contribución indexada para este repositorio
Línea de trabajo
Look for the UI code handling package selection and existing button actions. The feature requires integrating ADB commands (pm list packages, pm path, adb pull) to extract APKs. Need to create a new 'Extract APK' button, manage file output to an 'Extracted APKs' folder, and generate a log file. Check how the app currently interacts with ADB and file system operations.
Escrito por el modelo de indexación a partir del texto del issue.
Evaluación
- Stack tecnológico
- android, rust
- Área
- cli, desktop, tooling
- Tipo de issue
- Nueva funcionalidad
- Dificultad
- 3/5
- Tiempo estimado
- 1-2 días
- Estado de actividad
- Estancado
- Claridad
- Bien especificado
- Aptitud para principiantes
- 50/100