<html><head></head><body><div class="yahoo-style-wrap" style="font-family:Helvetica Neue, Helvetica, Arial, sans-serif;font-size:13px;"><div dir="ltr" data-setdir="false"><div><div style="font-family: Roboto, RobotoDraft, Helvetica, Arial, sans-serif; font-size: 14px;">Hi,</div><div style="font-family: Roboto, RobotoDraft, Helvetica, Arial, sans-serif; font-size: 14px;"><br></div><div style="font-family: Roboto, RobotoDraft, Helvetica, Arial, sans-serif; font-size: 14px;">My name is Faridah Akinotcho and I am currently using FlowDroid to build static app models. For this purpose, there are specific callbacks which I need to parse and analyze. In particular, I extended the AndroidCallbacks.txt file, with 'android.support.design.widget.NavigationView$OnNavigationItemSelected' in order to obtain the callback 'boolean onNavigationItemSelected(MenuItem menuItem)'</div><div style="font-family: Roboto, RobotoDraft, Helvetica, Arial, sans-serif; font-size: 14px;"><br></div><div style="font-family: Roboto, RobotoDraft, Helvetica, Arial, sans-serif; font-size: 14px;">The APK that I am working with obfuscate some of the library methods by renaming, as shown in the picture:</div><div style="font-family: Roboto, RobotoDraft, Helvetica, Arial, sans-serif; font-size: 14px;"><img src="" alt="screenshot.PNG" data-iml="702291.6999999881" style="border: none; max-width: 800px;" class="yahoo-inline-image" data-id="["8037a672-e052-416c-a9a4-8306d830274e",1]"><br></div><div style="font-family: Roboto, RobotoDraft, Helvetica, Arial, sans-serif; font-size: 14px;"><br></div><div style="font-family: Roboto, RobotoDraft, Helvetica, Arial, sans-serif; font-size: 14px;">My understanding was that, since FlowDroid parses bytecode, it would find and parse NavigationView$OnNavigationItemSelected, then extract its interface methods. However, logs show that FlowDroid extract NavigationView$a (the obfuscated version of the interface), which results in callbacks not being found.</div><div style="font-family: Roboto, RobotoDraft, Helvetica, Arial, sans-serif; font-size: 14px;"><br></div><div style="font-family: Roboto, RobotoDraft, Helvetica, Arial, sans-serif; font-size: 14px;">I was hoping I could get some clarification on whether this is the expected behavior and if so, I would greatly appreciate any pointers on how to solve this issue. Please note that, building an exhaustive list of all the obfuscated APIs and adding them to AndroidCallbacks.txt wouldn't be feasible, as the analysis I am trying to perform, will involve multiple apps, with potentially different obfuscated methods.</div><div style="font-family: Roboto, RobotoDraft, Helvetica, Arial, sans-serif; font-size: 14px;"><br></div><span style="font-family: Roboto, RobotoDraft, Helvetica, Arial, sans-serif; font-size: 14px;">Best regards,</span><div style="font-family: Roboto, RobotoDraft, Helvetica, Arial, sans-serif; font-size: 14px;">Faridah Akinotcho</div></div><br></div></div></body></html>