#Why currently this can't be done#
Why currently this can't be done
When a developer performs the upload of his application to Google Play, the application manifest file gets read to a database, from where the search for apps is performed.
To allow searching for applications based on their permissions, one would have to access the database and collect data that concerns the application manifest node <uses-permission>
, previously read from the AndroidManifest.xml file, where the developer has declared his application permissions.
While this seems quite straightforward, Google API does not provide means to this end:
Strictly, Google Play does not filter based on <uses-permission> elements.
From the Filters on Google Play Filtering based on Manifest Elements - <uses-permission>.
##Elaborating##
Elaborating
Essentially, Google Play Store uses the application manifest file to automatically apply filters based on the user's device, hardware specifications, country, carrier, etc.
All of this is done silently without the intervention of any search parameters.
A user either from Google Play or third party search engines, can limit the results after they get automatically filtered by Google, based on personal preferences like excluding paid apps; limit the results to apps that are compatible with the user devices, among others. But there's no way to interfere with the filters applied by Google. Even if, some how, we get to that part, the API essentially isn't prepared/designed to filter based on permissions as mentioned above.