简体   繁体   中英

Submitting Expo app bundle to Google play - "unsupported version of Play billing. Please upgrade to version 3 or newer"

Please help - I have a problem with enabling billing permissions in my expo app (managed workflow). When i build app bundle expo build:android -t app-bundle and submit it to google, google said that too many permissions - all permissions were enabled, which is insane. I removed all - added "permissions": [] to app.json, but after that google says that I have to enable billing permissions in order to add in-app purchases.

I've tried to specify "com.android.vending.BILLING" permission, but Google doesn't accept it - it says We've detected this app uses an unsupported version of Play billing. Please upgrade to Billing Library version 3 or newer to publish this app. Removing this permission helped to get red of the error, but google still doesn't allow to add any in-app product on google play, it says 'To add in-app products, you need to add the BILLING permission to your APK'

I tried to add <meta-data android:name="com.google.android.play.billingclient.version" android:value="3.1.0" /> to AndroidManifest.xml but it didn't help either

PS "expo-in-app-purchases": "^13.1.0" package installed

First of all, try to use

 implementation "com.android.billingclient:billing:5.0.0"

and in your manifest should contain something like:

<uses-permission android:name="com.android.vending.BILLING" />

So,finally, I resolved it. I updated Expo and expo cli to the latest version, fixed appeared issue with packages. Then I removed expo-in-app-purchases because it's not supported in managed workflow (!) and installed react-native-purchases instead, which is for RevenueCat plugin. Then started using eas build instead of expo build command, because expo build is not supported in the latest Expo SDK. But building were failing because of android folder from the previous expo version, I spent few days before I figured out that android folder should be removed. Also, i kept android permission in app.json:

    "android": {
      "package": "com.mycompany.myappname",
      "versionCode": 1,
      "permissions": ["com.android.vending.BILLING"]
    }

After that i was able to build app locally and in expo cloud! And google accepted it and allowed to start adding in app products! Magic!

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM