Challenge Overview
Previously, we ran a challenge to implement an Android App Instrumentation Coverage Tool as per the provided Ideation specification document.
In this challenge, we need you to make the following changes in our tool:
1. Catch exceptions from Soot
Currently, if we’re targeting many APKs and decompile fails for a specific APK the tool stops working, while we need to catch the error, count and go on to the next APK.
In order to catch exceptions thrown from Soot classes, we should modify the source code of the Soot class(es) but we need to make sure we don’t break any of its functionalities.
The name of the failed APKs should be logged in a failed_to_process.log file.
2. Log results
Update the tool to log the following in a results.log file:
-
How many APKs were successfully decompiled.
-
How many APKs were multi-dex.
Let’s discuss any questions or doubts on the challenge forum.