Search Unity

On Demand Resources never giving any results

Discussion in 'iOS and tvOS' started by AllanMSmith, Nov 18, 2017.

  1. AllanMSmith

    AllanMSmith

    Joined:
    Oct 2, 2012
    Posts:
    180
    Hi,

    We are using Asset Bundles and On Demand Resources in our project. Most of the time, everything is working nicely. However, for some mysterious reason, sometimes, in a few devices, we make the asset bundle (on demand resource) request, and we never get a return from that. Not from OnComplete, not from yield return, not an error... nothing, it just never do anything. This happens even from super simple calls such as OnDemandResources.PreloadAsync and yield returning the request.

    This doesnt happen on all devices and we have been unable to trace what is happening. We used Unity 2017.1.1 and Unity 2017.2.0 and they both yielded the same results. We also used Xcode 8 and now Xcode 9 with no difference in result. Honestly, we tried everything we could... adding odr:// in the beginning of the call, removing it... even when asking a tag we know doesnt exist, nothing happens, it just stays there forever.

    This is affecting our users and we are unable to reproduce this issue in our devices, and the one device we have that did have this issue, "miraculously" stopped having this issue when we changed the App Id that was logged in the device to another App Id, then downloading the old version of our app from the store, then downloading the new one from test flight, and suddenly it worked... but I have no idea how any of that could make any difference to WHY it was not working and suddenly was.

    Please, any assistance would be greatly appreciated... if there is ANY known issue that might cause an ODR to stay stuck "downloading", for all that is holy lol, let me know, even if it is a long shot.

    Best,
    Allan
     
  2. AllanMSmith

    AllanMSmith

    Joined:
    Oct 2, 2012
    Posts:
    180
    Btw, we also tested to see if for any chance the coroutine was being stopped or whatever but no, even doing "while (!request.isDone) Debug.Log("update");" we would get an update every time, so the game was running and the coroutine was running, just never ever becoming "done" or throwing errors or anything really.