由于应用内购买产品在 Wi-Fi 上运行 iOS 14.0.1 的 iPad 上出现错误,App Store 中的应用被拒绝
Posted
技术标签:
【中文标题】由于应用内购买产品在 Wi-Fi 上运行 iOS 14.0.1 的 iPad 上出现错误,App Store 中的应用被拒绝【英文标题】:App refused in App store because of In-app purchase products exhibited bug on iPad running iOS 14.0.1 on Wi-Fi 【发布时间】:2020-09-27 08:14:16 【问题描述】:我已经第三次收到来自应用商店的拒绝理由。我的应用被拒绝的原因与在运行 ios 14.0.1 的 iPad 中测试时应用内购买存在一个或多个错误相同。我已经在 iPhone iOS 14.0.1 中使用 Testflight 测试了该应用程序,但我从来没有得到它为他们显示的内容。
来自 App Store 的消息
指南 2.1 - 性能 - 应用完整性
我们发现您的应用内购买产品存在一个或多个错误 在通过 Wi-Fi 运行 iOS 14.0.1 的 iPad 上查看时。具体来说,我们 无法完成应用内购买。购买时进入 无限循环,支付机制不断呈现。
接下来的步骤
在您的服务器上验证收据时,您的服务器需要能够 处理从 Apple 获取收据的生产签名应用程序 测试环境。推荐的方法适用于您的生产 服务器始终根据生产 App Store 验证收据 第一的。如果验证失败并显示错误代码“使用沙盒收据 在生产中,”您应该针对测试环境进行验证 而是。
此外,我不在我的代码中验证购买。 我已经在试飞的众多 iPhone 中测试了该应用程序,并且它可以正常工作。另外,我在任何模拟器的开发中都没有遇到这样的错误/错误。 应用商店有什么解决方法吗?
在代码方面,它是Integrating In-App Purchases in Mobile Apps和Purchase Non-Consumable的副本
async Task ExecuteRemoveAdCommand()
if (IsBusy) return;
IsBusy = true;
try
var connected = await CrossInAppBilling.Current.ConnectAsync();
if (!connected)
await App.Current.MainPage.DisplayAlert("Not Connected", "It seems something is wrong with your connection. " +
"We could not connect to the store, please try again", "OK");
return;
//try to purchase item
var purchase = await CrossInAppBilling.Current.PurchaseAsync(Helper.ProductId, ItemType.InAppPurchase, "apppayload");
if (purchase == null)
await App.Current.MainPage.DisplayAlert("Not Purchased", "We could not perform your purchase at the moment, please try again", "OK");
return;
else
//Purchased, save this information
var id = purchase.Id;
var token = purchase.PurchaseToken;
var state = purchase.State;
if (!string.IsNullOrEmpty(id))
await App.Current.MainPage.DisplayAlert("Purchase Successful", "You are enjoying ad free wQuran. Thank you for your purchase", "OK");
AdVisibility = false;
catch (Exception ex)
Debug.WriteLine(ex.Message);
await App.Current.MainPage.DisplayAlert("Not Purchased", "We could not perform your purchase at the moment, please try again", "OK");
finally
await CrossInAppBilling.Current.DisconnectAsync();
IsBusy = false;
【问题讨论】:
嗨,我不确定你是否在 iPad 上测试过这个。如果您想知道详细原因,您需要在 iPad 设备上进行测试才能看到设备日志。 我没有 iPad,但在开发模式下我没有遇到任何错误。 【参考方案1】:通过回复应用审查团队,要求他们考虑重新启动 Ipad 并将他们的设备重新连接到互联网,我终于设法让我的应用进入了 App Store。
【讨论】:
以上是关于由于应用内购买产品在 Wi-Fi 上运行 iOS 14.0.1 的 iPad 上出现错误,App Store 中的应用被拒绝的主要内容,如果未能解决你的问题,请参考以下文章