How do I determine why my Android app requires certain permissions?
<p>Let's say I have taken over development of an Android app, and my boss asks me why our app requires certain permissions to be displayed to users who buy the app on the Android Market. </p>

<p>Are there any tools or tricks I can use to determine what code triggers each permission, so I can figure out why our app functionally needs those permissions? In particular, I am interested in these permissions: </p>

<ul>
<li><p>Phone Calls - Read phone status and identity </p></li>
<li><p>System Tools - Retrieve running applications - Allows app to retrieve information about currently and recently running tasks, May allow malicious apps to discover private information about other apps.</p></li>
</ul>

<p>The app is a GPS tracking app, and it's not obvious why this permission might be needed. </p>

<p>It would also be helpful to get any tips on why this permission might be needed, even if you can't tell me how to directly analyze the code to find out.</p>
