Google Play Game Services exception when getting friends

Hi,

When I call

gameNetwork.request("loadFriends", getFriendsList)

I get this in my logs:

W/System.err(27119): com.naef.jnlua.LuaRuntimeException: java.lang.NullPointerException W/System.err(27119): Java Stack Trace: W/System.err(27119): CoronaProvider.gameNetwork.google.LuaLoader.request(LuaLoader.java:371) W/System.err(27119): CoronaProvider.gameNetwork.google.LuaLoader$RequestWrapper.invoke(LuaLoader.java:730) W/System.err(27119): com.naef.jnlua.LuaState.lua\_pcall(Native Method) W/System.err(27119): com.naef.jnlua.LuaState.call(Unknown Source) W/System.err(27119): com.ansca.corona.CoronaLua.dispatchEvent(CoronaLua.java:90) W/System.err(27119): network.NetworkRequest$LuaCallback$1.executeUsing(NetworkRequest.java:598) W/System.err(27119): com.ansca.corona.CoronaRuntimeTaskDispatcher$TaskEvent.Send(CoronaRuntimeTaskDispatcher.java:153) W/System.err(27119): com.ansca.corona.events.EventManager.sendEvents(EventManager.java:229) W/System.err(27119): com.ansca.corona.Controller.updateRuntimeState(Controller.java:223) W/System.err(27119): com.ansca.corona.opengl.CoronaGLSurfaceView$CoronaRenderer.onDrawFrame(CoronaGLSurfaceView.java:399) W/System.err(27119): com.ansca.corona.opengl.GLSurfaceView$GLThread.guardedRun(GLSurfaceView.java:1622) W/System.err(27119): com.ansca.corona.opengl.GLSurfaceView$GLThread.run(GLSurfaceView.java:1377) W/System.err(27119): at com.naef.jnlua.LuaState.lua\_pcall(Native Method) W/System.err(27119): at com.naef.jnlua.LuaState.call(Unknown Source) W/System.err(27119): at com.ansca.corona.CoronaLua.dispatchEvent(CoronaLua.java:90) W/System.err(27119): at network.NetworkRequest$LuaCallback$1.executeUsing(NetworkRequest.java:598) W/System.err(27119): at com.ansca.corona.CoronaRuntimeTaskDispatcher$TaskEvent.Send(CoronaRuntimeTaskDispatcher.java:153) W/System.err(27119): at com.ansca.corona.events.EventManager.sendEvents(EventManager.java:229) W/System.err(27119): at com.ansca.corona.Controller.updateRuntimeState(Controller.java:223) W/System.err(27119): at com.ansca.corona.opengl.CoronaGLSurfaceView$CoronaRenderer.onDrawFrame(CoronaGLSurfaceView.java:399) W/System.err(27119): at com.ansca.corona.opengl.GLSurfaceView$GLThread.guardedRun(GLSurfaceView.java:1622) W/System.err(27119): at com.ansca.corona.opengl.GLSurfaceView$GLThread.run(GLSurfaceView.java:1377)

I probably don’t have any friends that would be returned [I’m just very anti-social ;)]

Although the code I pasted works well on iOS, it does not on Android, and per docs it should look like this:

gameNetwork.request("loadFriends", { listener = getFriendsList })

However, after making this change I still get an exception, a different one however:

W/System.err( 7634): com.naef.jnlua.LuaRuntimeException: ?:0: attempt to get length of a nil value W/System.err( 7634):     at com.naef.jnlua.LuaState.lua\_pcall(Native Method) W/System.err( 7634):     at com.naef.jnlua.LuaState.call(Unknown Source) W/System.err( 7634):     at com.ansca.corona.CoronaLua.dispatchEvent(CoronaLua.java:90) W/System.err( 7634):     at CoronaProvider.gameNetwork.google.LoadInvitablePlayersManager$LoadPlayerListener$1.executeUsing(LoadInvitablePlayersManager.java:113) W/System.err( 7634):     at com.ansca.corona.CoronaRuntimeTaskDispatcher$TaskEvent.Send(CoronaRuntimeTaskDispatcher.java:153) W/System.err( 7634):     at com.ansca.corona.events.EventManager.sendEvents(EventManager.java:229) W/System.err( 7634):     at com.ansca.corona.Controller.updateRuntimeState(Controller.java:223) W/System.err( 7634):     at com.ansca.corona.opengl.CoronaGLSurfaceView$CoronaRenderer.onDrawFrame(CoronaGLSurfaceView.java:399) W/System.err( 7634):     at com.ansca.corona.opengl.GLSurfaceView$GLThread.guardedRun(GLSurfaceView.java:1622) W/System.err( 7634):     at com.ansca.corona.opengl.GLSurfaceView$GLThread.run(GLSurfaceView.java:1377)  

Somehow it seems to me this is due to the lack of friends returned from GPGS.

Hi,

I tried reproducing this but couldn’t.  Do you have a more detailed sample I can try?  Thanks.

I’ll try to mock something up for you.

One question though, does loadFriends request give you back any friends in return?

EDIT:

you’re right… I’ve created a sample project, and it works…

It’s weird because I simply took the code I use in my project… lol

extra weird

EDIT2: 

I just ran my project and it works as well [haven’t touched the apk since writing this post]. Might have been a temporary issue with G+? Very strange.

Anyway… I’m glad it works and I can commit the change :slight_smile:

Although the code I pasted works well on iOS, it does not on Android, and per docs it should look like this:

gameNetwork.request("loadFriends", { listener = getFriendsList })

However, after making this change I still get an exception, a different one however:

W/System.err( 7634): com.naef.jnlua.LuaRuntimeException: ?:0: attempt to get length of a nil value W/System.err( 7634):     at com.naef.jnlua.LuaState.lua\_pcall(Native Method) W/System.err( 7634):     at com.naef.jnlua.LuaState.call(Unknown Source) W/System.err( 7634):     at com.ansca.corona.CoronaLua.dispatchEvent(CoronaLua.java:90) W/System.err( 7634):     at CoronaProvider.gameNetwork.google.LoadInvitablePlayersManager$LoadPlayerListener$1.executeUsing(LoadInvitablePlayersManager.java:113) W/System.err( 7634):     at com.ansca.corona.CoronaRuntimeTaskDispatcher$TaskEvent.Send(CoronaRuntimeTaskDispatcher.java:153) W/System.err( 7634):     at com.ansca.corona.events.EventManager.sendEvents(EventManager.java:229) W/System.err( 7634):     at com.ansca.corona.Controller.updateRuntimeState(Controller.java:223) W/System.err( 7634):     at com.ansca.corona.opengl.CoronaGLSurfaceView$CoronaRenderer.onDrawFrame(CoronaGLSurfaceView.java:399) W/System.err( 7634):     at com.ansca.corona.opengl.GLSurfaceView$GLThread.guardedRun(GLSurfaceView.java:1622) W/System.err( 7634):     at com.ansca.corona.opengl.GLSurfaceView$GLThread.run(GLSurfaceView.java:1377)  

Somehow it seems to me this is due to the lack of friends returned from GPGS.

Hi,

I tried reproducing this but couldn’t.  Do you have a more detailed sample I can try?  Thanks.

I’ll try to mock something up for you.

One question though, does loadFriends request give you back any friends in return?

EDIT:

you’re right… I’ve created a sample project, and it works…

It’s weird because I simply took the code I use in my project… lol

extra weird

EDIT2: 

I just ran my project and it works as well [haven’t touched the apk since writing this post]. Might have been a temporary issue with G+? Very strange.

Anyway… I’m glad it works and I can commit the change :slight_smile: