I use codes below to dispatch event.
CoronaEnvironment.getCoronaActivity().runOnUiThread(new Runnable()
{
@Override
public void run()
{
try
{
CoronaLua.newEvent(L, “nativeEvent”);
if (parameters != null) {
CoronaLua.pushHashtable(L, parameters);
L.setField(-2, “data”);
}
CoronaLua.dispatchRuntimeEvent(L, 0);
}
catch (Exception ex)
{
ex.printStackTrace();
}
}
});
Android throws an error below.
java.lang.IllegalArgumentException: illegal index
at com.naef.jnlua.LuaState.lua_setfield(Native Method)
at com.naef.jnlua.LuaState.<init>(Unknown Source)
at com.ansca.corona.CoronaEnvironment.invokeLuaErrorHandler(CoronaEnvironment.java:422)
at com.ansca.corona.NativeToJavaBridge.callInvokeLuaErrorHandler(NativeToJavaBridge.java:446)
at com.ansca.corona.JavaToNativeShim.nativeRender(Native Method)
at com.ansca.corona.JavaToNativeShim.render(JavaToNativeShim.java:182)
at com.ansca.corona.Controller.updateRuntimeState(Controller.java:347)
at com.ansca.corona.graphics.opengl.CoronaGLSurfaceView$CoronaRenderer.onDrawFrame(CoronaGLSurfaceView.java:425)
at com.ansca.corona.graphics.opengl.GLSurfaceView$GLThread.guardedRun(GLSurfaceView.java:1623)
at com.ansca.corona.graphics.opengl.GLSurfaceView$GLThread.run(GLSurfaceView.java:1378)