2016-07-20 26 views
0

我的应用被苹果拒绝,因为他们在连接到IPv6网络时无法购买内容。我不必在IPv6网络中测试该应用,但在正常网络中一切正常。我目前正在使用Xamarin.InAppPurchase(当前版本2.8)组件。他们按下购买按钮时发生的错误是InAppPurchase组件中的标准错误警报“购买[...]时发生错误”。任何人都有同样的问题,或为此解决方案?Xamarin ios与Xamarin.InAppPurchase组件通过应用购买IPv6问题

回答

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中的一些漂亮方法,如果IPv6可用或不可用,这些方法可帮助您解析IP地址。如果您使用HttpClient,BasicHttpBinding或WebRequests,则除非使用上面讨论的硬编码IP地址,否则不需要进行任何更改。