Google's Play Store is pretty fast evolving that they bring in new policies almost every month to plug the discovered gaps in app publishing for the sake of protecting the end-users of its platform who download the apps.
In the absence of app owners not acting on the new policies, the non-compliant apps are removed from the play store. I had two of my apps removed last year, as I really couldn't keep up my apps compliance with the new policies. Sometime during the end of last year, I revived one of my apps and published it with much relief.
Months down the lane new policies were brought in by Google, notable the mandate for apps to have genuine reasons to have Location permissions (which includes all 3 - android.permission.ACCESS_FINE_LOCATION, android.permission.ACCESS_BACKGROUND_LOCATION, android.permission.ACCESS_COARSE_LOCATION) and Package Install permission (android.permission.REQUEST_INSTALL_PACKAGES).
Only last year, I had migrated my app from native android to ReactNative (RN) leveraging Expo SDK and platform. Expo has this weird nature of adding unwanted permissions to the app, even without you asking for it at the time of it bundling the app for publishing. Incidentally, I had noted this issue much, put in a fix and published a newer version of the app well last year, much before google notifying me of non-compliance on this front.
And yet google removed my app citing non-compliance on this front, sometime this year. To make things harder, its communication on what and where things have gone wrong was ambiguous.
I did the following to get out of this situation and get the app published again.
Step 1: Ensure that in your app.json the required permission settings looks like below:
|Image generated using https://carbon.now.sh/
Step 2: If you are having managed publishing setup like me, then it is important that the active deployment in each of the channel, has these issues resolved. If not ensure that you update that channel as well with latest artefact having a fix for this or promote your latest artefact to the other channels with dated artefact having this permission issue in it. This was my issue that I discovered the hard way.
Step 3: You can appeal against the respective decision within the Play Console and can anticipate to get a response within a day or week (in worse case).