vw_websocket icon indicating copy to clipboard operation
vw_websocket copied to clipboard

WebSocket.buildJavaScriptData fatal NullPointerException FIX

Open ken-okabe opened this issue 11 years ago • 1 comments

01-13 20:22:15.355 1285-1285/com.example.app E/AndroidRuntime﹕ FATAL EXCEPTION: main java.lang.NullPointerException at com.strumsoft.websocket.phonegap.WebSocket.buildJavaScriptData(WebSocket.java:416) at com.strumsoft.websocket.phonegap.WebSocket.access$400(WebSocket.java:60) at com.strumsoft.websocket.phonegap.WebSocket$5.run(WebSocket.java:389) at android.os.Handler.handleCallback(Handler.java:725) at android.os.Handler.dispatchMessage(Handler.java:92) at android.os.Looper.loop(Looper.java:137) at android.app.ActivityThread.main(ActivityThread.java:5041) at java.lang.reflect.Method.invokeNative(Native Method) at java.lang.reflect.Method.invoke(Method.java:511) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:793) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:560) at dalvik.system.NativeStart.main(Native Method)

Ok, NullPointerException causes when

String event == error
String msg == null

so it needs to be fixed as below, and I confirmed the JS side error event fired properly

    private String buildJavaScriptData(String event, String msg) {
    if (msg == null )
    msg = “”;
    String _d = “javascript:WebSocket.” + event + “(” + “{” + “\”_target\”:\”" + id + “\”,” + “\”data\”:’” + msg.replaceAll(“‘”, “\\\\’”)
    + “‘” + “}” + “)”;
    return _d;
    }

ken-okabe avatar Jan 13 '14 20:01 ken-okabe

I will check it carefully

thinksource avatar Jan 24 '14 03:01 thinksource