This happen to me too, and it took a bit of debugging to figure out. If you go to the app page (before clicking update), and scroll to the very bottom, there is a link to "Permission Details". In my case, it showed "Use accounts on the device", which corresponded to android.permission.USE_CREDENTIALS
. You may have a different permission, but if you have the same new one as mine, read on for how I debugged and fixed it.
I didn't add this permission, but doing a grep of my entire build, I saw:
./app/build/intermediates/exploded-aar/com.google.android.gms/play-services-wallet/8.3.0/AndroidManifest.xml: <uses-permission android:name="android.permission.USE_CREDENTIALS"/>
So I suspect some update to google-play-services (or perhaps moving from selective API includes to the whole API include, as delineated in https://developers.google.com/android/guides/setup) caused me to use the google-play-services file and it's AndroidManifest.xml dependencies, including this new permission I never needed. There's more information on this in: Why are permissions being automatically added to my AndroidManifest when including Google Play Services library
By going back to using individual google-play-services packages, I was able to remove Wallet and it's USE_CREDENTIALS, which should help make my installs seamless again.
Incidentally, Android 6.0 Marshmellow removed this permission entirely (see USE_CREDENTIALS not available in new Android M API ), so maybe that has something to do with it? Where Wallet started depending on it automatically in some recent-or-not-so-recent update, since they assumed it'd be automatic in Marshmellow builds, and some apps are now including the permission dependency without being aware of it?