在https://docs.unity3d.com/Manual/UnityWebRequest.html上给出的示例可以在Windows、Windows、Android上运行,甚至可以在iOS编辑器中如愿以偿地工作。但当我将应用程序发布到苹果应用商店时,它无法连接到互联网。与其他平台不同的是,没有明显的延迟,当请求被尝试时,它似乎立即失败。
错误是:
未知误差
是否有任何特殊的方式,我需要配置XCode项目,以允许一个iOS应用程序连接到互联网?
值得注意的是,下面是进行调用的源代码:
IEnumerator SyncRequest(string data, Action<string> responseHandler)
{
Debug.Log("Requesting " + data);
UnityWebRequest www = UnityWebRequest.Get(baseurl + "/api-voteoptions.php?" + data);
yield return www.Send();
if (www.isError) // <-- Always true on published iOS app
{
string error = www.error; // <-- "Unknown Error"
Debug.LogWarning(error);
if (responseHandler != null)
{
responseHandler(error);
}
}
else
{
string response = www.downloadHandler.text;
Debug.Log(response);
if (responseHandler != null)
{
responseHandler(response);
}
}
}发布于 2016-10-17 17:57:32
找到了解决办法。事实证明,我必须在Info.plist文件中指定我希望允许iOS应用程序的“不安全”http连接。
<key>NSAppTransportSecurity</key>
<dict>
<key>NSAllowsArbitraryLoads</key>
<true/>
<key>NSExceptionDomains</key>
<dict>
<key>just-an-example.com</key>
<string></string>
</dict>
</dict>发布于 2020-10-10 07:49:59
IEnumerator loadingImage()
{
string url = "http://picturekeyboardapps.in/UnityApp/CarStunt/getCarTextures.php";
UnityWebRequest webrequest = UnityWebRequest.Get(url);
yield return webrequest.SendWebRequest();
if (webrequest.isNetworkError || webrequest.isHttpError)
{
print("Network Error"); // return Unkown Error IOS Mobile
}
else
{
}
}https://stackoverflow.com/questions/40069824
复制相似问题