我的应用被Apple拒绝,因为他们在连接到IPv6网络时无法购买内容。我没有必要在IPv6网络中测试应用程序,但在普通网络上一切正常。我目前正在使用Xamarin.InAppPurchase(当前版本2.8)组件。按下购买按钮时发生的错误是来自InAppPurchase组件的标准错误警告"购买[...]时错误#34;。任何人都有同样的问题,或解决方案吗?
答案 0 :(得分:0)
你能否阅读关于让Xamarin iOS Apps ipv6准备就绪的博文? https://blog.xamarin.com/making-your-ios-apps-ipv6-ready/
在博客中提到的其他事项中,主要问题似乎是使用硬编码的IPv4地址:
如果可用,所有新创建的IP地址都需要是IPv6或转换为IPv6。我们建议尽可能使用主机名,但如果你不能,请不要害怕,因为使用.MapToIPv6()扩展方法它非常简单。这是一个快速修复,因为你永远不会得到纯IPv6连接;在这种情况下,您还可以手动将任何IP转换为字节数组,或者只使用IPAddress的TryParse方法来解析任何IPv6地址。另外,请查看System.Net.Dns中的一些漂亮方法,这些方法可以帮助您解决IP地址,如果IPv6可用或不可用。如果您使用的是HttpClient,BasicHttpBinding或WebRequests,则除非使用上面讨论的硬编码IP地址,否则无需进行任何更改。