有什么东西阻止我的游戏连接到服务器,它没有得到批准的应用程序审查小组。
这款游戏是在GooglePlay上发布的,并成功地在所有安卓设备上运行,甚至在Linux和Windows上也是如此。IPv6网络也在运行。游戏使用的是NetworkTransport,在我的例子中,它适用于Socket(而不是Websockets)。
我已经成功地测试、连接和玩了这个游戏:
我有3个VPS服务器:
客户端使用一些随机端口,由OS分配。
游戏总是连接到具有静态IP地址的服务器,它不使用对等,客户端总是启动连接,而不是服务器(...so NAT不应该是问题)。
连接直接通过IP地址,而不是DNS请求。不涉及SSL证书,也不涉及加密。Ping从我的办公室桌面到所有服务器(包括IPv4和IPv6 ping)都能正常工作。
如果没有互联网连接,游戏将被编码为弹出并暂停。但当AppStore评论团队推出这款游戏时,它不知何故认为存在着互联网连接。然而,当它试图建立连接时,IPv4和IPv6网络都只是超时。
也许,在XCode上编译项目时,我错过了一些构建选项?也许我需要添加一些许可/“能力”?
它怎么可能在任何地方都起作用,但在AppStore审查小组总部却不起作用?
我甚至将NSAllowArbitraryLoads键添加到.plist文件中,但似乎AppStore iPads无法与我的服务器对话。他们在iOS 13.5.1上运行Wi。
,这是我的plist:
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>CADisableMinimumFrameDuration</key>
<false />
<key>CFBundleDevelopmentRegion</key>
<string>en</string>
<key>CFBundleDisplayName</key>
<string>Spider Planet</string>
<key>CFBundleExecutable</key>
<string>${EXECUTABLE_NAME}</string>
<key>CFBundleIdentifier</key>
<string>${PRODUCT_BUNDLE_IDENTIFIER}</string>
<key>CFBundleInfoDictionaryVersion</key>
<string>6.0</string>
<key>CFBundleName</key>
<string>${PRODUCT_NAME}</string>
<key>CFBundlePackageType</key>
<string>APPL</string>
<key>CFBundleShortVersionString</key>
<string>1.1</string>
<key>CFBundleVersion</key>
<string>24</string>
<key>LSRequiresIPhoneOS</key>
<true />
<key>NSAllowArbitraryLoads</key>
<true />
<key>NSAppTransportSecurity</key>
<dict>
<key>NSAllowsArbitraryLoads</key>
<true />
</dict>
<key>UIBackgroundModes</key>
<array>
<string>remote-notification</string>
</array>
<key>UILaunchStoryboardName~ipad</key>
<string>LaunchScreen-iPad</string>
<key>UILaunchStoryboardName~iphone</key>
<string>LaunchScreen-iPhone</string>
<key>UILaunchStoryboardName~ipod</key>
<string>LaunchScreen-iPhone</string>
<key>UIPrerenderedIcon</key>
<false />
<key>UIRequiredDeviceCapabilities</key>
<array>
<string>armv7</string>
<string>gamekit</string>
<string>metal</string>
</array>
<key>UIRequiresFullScreen</key>
<true />
<key>UIRequiresPersistentWiFi</key>
<true />
<key>UIStatusBarHidden</key>
<true />
<key>UIStatusBarStyle</key>
<string>UIStatusBarStyleDefault</string>
<key>UISupportedInterfaceOrientations</key>
<array>
<string>UIInterfaceOrientationLandscapeRight</string>
<string>UIInterfaceOrientationLandscapeLeft</string>
</array>
<key>Unity_LoadingActivityIndicatorStyle</key>
<integer>-1</integer>
<key>UnityAddRemoteNotificationCapability</key>
<true />
<key>UnityCloudProjectID</key>
<string></string>
<key>UnityCrashSubmissionURL</key>
<string></string>
<key>UnityNotificationDefaultAuthorizationOptions</key>
<integer>7</integer>
<key>UnityNotificationRequestAuthorizationForRemoteNotificationsOnAppLaunch</key>
<false />
<key>UnityNotificationRequestAuthorizationOnAppLaunch</key>
<true />
<key>UnityRemoteNotificationForegroundPresentationOptions</key>
<integer>-1</integer>
<key>UnityUseAPSReleaseEnvironment</key>
<false />
<key>UnityUseLocationNotificationTrigger</key>
<false />
<key>FacebookAppID</key>
<string>2895569510500725</string>
<key>FacebookAutoLogAppEventsEnabled</key>
<true />
<key>FacebookAdvertiserIDCollectionEnabled</key>
<true />
<key>CFBundleURLTypes</key>
<array>
<dict>
<key>CFBundleURLName</key>
<string>facebook-unity-sdk</string>
<key>CFBundleURLSchemes</key>
<array>
<string>fb2895569510500725</string>
</array>
</dict>
</array>
<key>LSApplicationQueriesSchemes</key>
<array>
<string>fbapi</string>
<string>fb-messenger-api</string>
<string>fbauth2</string>
<string>fbshareextension</string>
</array>
</dict>
</plist>https://stackoverflow.com/questions/62368962
复制相似问题