这个问题的原因是因为Google支付库不支持所有地区的商品细节信息,导致在调用API时抛出异常。 解决方法是在代码中手动检查是否支持获取商品细节信息,如果不支持,则使用另一个API获取商品的基本信息,例如商品ID、名称、价格等,然后显示这些信息而不是商品细节信息。
以下是一个示例代码片段,可以在调用API之前检查是否支持商品细节信息:
if (billingClient.isFeatureSupported(BillingClient.FeatureType.PRICE_CHANGE_CONFIRMATION)) { //调用支持ProductDetails的API } else { //调用基础API获取商品信息,而不是商品细节信息 }