- This repository is not maintained at the moment. Please explore latest shrinking functionality in ACVTool.
This tool prototype shrinks Android apps towards executed code. Based on the instruction coverage measured by ACVTool.
- to setup config.json please check the Installation section, step 2 at the ACVTool readme
java
andadb
should be available from the terminal- run emulator
- check Python dependecies if the script crashes
- an APK is being instrumented by ACVTool
- installed
- instrumentation process started (code coverage measurement)
- the app is ready for tests
- instruction coverage generated
- ACVCut shrinks the app and creates the shrunk version (shrunk.apk)
> python2 prepare_wd.py <apk_path> --wd <working_dir> --package <package_name>
> python2 acvcut.py <apk_path> --wd <working_dir> --package <package_name>
ACVCut is a proof of work tool that worked with the TimeBomb sample and the Twitter Lite app on the API 25 Android Emulator. The tool is likely to have bugs and may require some tweaks when run on other apps.