This is a last minute issue that has come about in our project after our online game mode was implemented using WWW in a synchronous fashion (i.e. yield immediately afterward). This was done somewhat blindly, and as is so common in games development, when it worked it was left in place.
Unfortunately, the inevitable lack of control over timeouts has come back to bite us on poor connections, and we no longer have the time frame to refactor it to work properly.
So we are currently left with two options, leave it as is which will cause negative reviews or attempt to use CoRoutines in order to do a partial yield that gives some form of timeout control.
I’ve attempted to implement the loader (in javascript, rather than C#) as described here:
http://forum.unity3d.com/threads/12123-Yield-in-C-question?p=134897&viewfull=1#post134897
Which works as expected in the editor and times out where appropriate.
The same code does not work on the iPhone, it locks up on the StartCoroutine call. After a little digging, the iPhone seems picky about this stuff, and Javascript even more so. So I’ve shuffled stuff around to try and get it to work, but all to no avail.
So in short, can someone either clarify if what I desire is even possible in Unity, or please post a functional snippet of iOS Javascript code showing how to implement WWW with a timeout, whether using CoRoutines or some hither to unknown method.
This is a very time critical issue and this is most definitely the last ditch attempt.
Many Thanks.