Xamarin Forms Android应用发布遇Play Billing版本不支持如何解决
问题报错
我们检测到该应用使用了不受支持的Play Billing版本,请升级到Billing Library 3或更高版本后再发布此应用。
错误原因
即使你没有主动集成计费相关功能,常见的第三方Xamarin组件(如旧版广告SDK、Google Play服务组件、数据统计类库)会间接依赖低于3.0版本的Play Billing Library,或是在AndroidManifest中隐式声明了计费相关权限,触发Google Play的检测规则。
修复步骤
- 排查间接引入的Billing依赖
右键Android项目→管理NuGet程序包→切换到「已安装」标签,搜索Billing关键词,查看是否有Xamarin.GooglePlayServices.Billing相关包被间接引入,记录该包对应的上层依赖项。
也可以在包管理控制台执行命令快速检索:Get-Package | Where-Object { $_.Id -match "Billing|GooglePlay.*Billing" } - 强制覆盖高版本Billing库
在Android项目中直接安装最新稳定版的Xamarin.GooglePlayServices.BillingNuGet包,选择≥3.0.0的版本即可,最新稳定版已更新到6.x,安装后会自动覆盖项目中依赖的旧版本Billing库。 - 清理AndroidManifest冗余声明
如果没有搜到任何Billing相关NuGet包,打开Android项目下的Properties/AndroidManifest.xml文件,搜索和计费相关的权限、服务声明,所有包含billing关键词的声明都可以删除,操作前建议先备份原文件,常见的冗余声明如下:<uses-permission android:name="com.android.vending.BILLING" /> <service android:name="com.google.android.gms.billing..." /> - 重新打包验证
先清理整个解决方案,再重新生成Android项目,打包aab/apk后重新上传到Google Play控制台即可。
补充说明:如果你的项目中集成了AdMob、Firebase Ads相关组件,建议同步将这些组件升级到最新稳定版,这类组件是间接引入旧版Billing库的高发项。
内容的提问来源于stack exchange,提问作者BlueRaja - Danny Pflughoeft
相关产品推荐
相关产品推荐

