Hi Andrew,
I might have some positive news for you. I managed to get two iOS devices speaking to each other using your sample, with some modifications. The biggest change I made – meaning, the change that seems to have made all the difference – was that I assigned the “requestCallback” listener to all matches using this command:
[lua]
gameNetwork.request( “setEventListener”, { listener = requestCallback }
[/lua]
If you look at our docs here…
https://docs.coronalabs.com/plugin/gameNetwork-apple/request.html
…you’ll see that using that “sets the event listener for all matches”, essentially like an over-arching assignment of the listener function for matches.
The result of this is that GC now sends the data back and forth, and I get a response on one device when I call “endTurn” on the other device. I can continue doing this like volleying a tennis ball back and forth, and it updates (triggers the listener) back and forth just like I’d expect it to.
Anyway, can you please try to implement that in your app and see what happens?
Note that I’m not dismissing what appears to be a legitimate bug in Corona on this. It seems that the listener which you can typically assign “inline” with all of the gameNetwork.request() calls is not sending all of the data to the listener specified therein (only some of it, I think). So basically, we need to continue exploring what is going on and fix it in the Corona core if we determine it’s a bug. In the meantime, however, please try my approach above and see if you can get it working like you had it in iOS 8.3.
Best regards,
Brent