简体   繁体   中英

Unity iOS Application Ipv6 support testing

I have submitted a Unity3D application to AppleMarket, but it has been rejected because of a bug: application works not as intended while connected to a IPv6 network.

I have a Mac virtual machine(thanks to VMware Workstation), and I need somehow to test my application on an iPad simulator on this virtual machine. The PC hosting virtual machine is connected to the Internet via router(cabel).

How do I enable IPv6 network to test my app?

I faced this problem in iOS. Than I change my reachblility class internet connection method and my app approved. I have not not more knowledge in Unity. But In iOS I am writing the code It will work for Ipv6. If You want to make Ipv6 network in your system than please check

https://developer.apple.com/library/content/documentation/NetworkingInternetWeb/Conceptual/NetworkingOverview/UnderstandingandPreparingfortheIPv6Transition/UnderstandingandPreparingfortheIPv6Transition.html

Objective c

 + (instancetype)reachabilityForInternetConnection
 {
  struct sockaddr_in6 zeroAddress;
  bzero(&zeroAddress, sizeof(zeroAddress));
  zeroAddress.sin6_len = sizeof(zeroAddress);
  zeroAddress.sin6_family = AF_INET6;
  return [self reachabilityWithAddress: (const struct sockaddr *) &zeroAddress];
 }

Swift 3

func ipv6Reachability() -> SCNetworkReachability? 
{
var zeroAddress = sockaddr_in6()
zeroAddress.sin6_len = UInt8(MemoryLayout<sockaddr_in>.size)
zeroAddress.sin6_family = sa_family_t(AF_INET6)

return withUnsafePointer(to: &zeroAddress, {
    $0.withMemoryRebound(to: sockaddr.self, capacity: 1) {
        SCNetworkReachabilityCreateWithAddress(nil, $0)
    }
})
}

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM