2016-10-16 14 views
2

https://docs.unity3d.com/Manual/UnityWebRequest.html에 주어진 예제는 Windows 데스크톱, Windows Mobile, Android 및 iOS 편집기에서도 예상대로 작동합니다. 하지만 애플 앱 스토어에 앱을 게시하면 인터넷에 연결되지 않습니다. 다른 플랫폼과 달리 눈에 띄는 지연은 없으며 요청이 시도 될 때 즉시 실패하는 것으로 보입니다.UnityWebRequest가 iOS에서 작동하지 않습니다.

오류 :

알 수없는 오류

내가 iOS 앱이 인터넷에 연결할 수 있도록하는 Xcode 프로젝트를 구성 할 필요가 특별한 방법이 있나요?

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); 
     } 
    } 
} 
+0

이것은 무엇이든 가능합니다. 나는 귀하의 서버에 문제가 있거나 요청을 보내는 url에 문제가있을 수 있습니다. 불행히도 유일한 방법은 문제를 재현하는 것입니다. 이렇게하려면 url과 전달할 매개 변수를 제공해야합니다. 여기에는'data','responseHandler','baseurl' 변수가 포함됩니다. – Programmer

+0

내가 말했듯이, 그것은 모든 다른 플랫폼에서 작동하며 애플 맥북 100 %의 iOS에서도 문제없이 작동합니다. 애플 앱 스토어에 앱을 게시 할 때만 문제가된다. 그래서 1) 다른 플랫폼에서 작동하기 때문에 서버가 될 수 없다. 2) 코드를 수정하지 않고 동일한 코드가 다른 플랫폼에서 작동하기 때문에 코드가 될 수 없다. 3) 정확히 GET 요청이기 때문에 데이터가 될 수 없다. 동일한 데이터. 유일한 차이점은 앱 스토어와 Unity가 ObjectiveC 나 앱 "번들"에 코드를 패키징하기 위해 무엇을하고 있는지에 관한 것입니다. – Koning

+0

** "내가 말했듯이 다른 모든 플랫폼에서나 iOS에서도 작동합니다. ** 다른 플랫폼에서 작동하는지 여부는 중요하지 않습니다. 나는 SO에 이것 같이 몇몇 문제를 해결하고 끝나거나 URL 인 것을 끝낸다. ** "코드를 수정하지 않고 동일한 코드를 다른 플랫폼에서 사용할 수 있으므로 코드가 될 수 없습니다."** 물론, App Store에서이를 비난 할 수는 있습니다. 우리는 App Store에서 아무 것도 수정할 수있는 권한이 없다는 것을 알고 있으므로 계속 진행해야합니다. 해피 코딩! – Programmer

답변

1

해결책을 찾았

그것은 가치가 무엇인지에 대한

, 여기에 전화를 만드는 소스 코드입니다. 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> 
관련 문제