关于android的websocket实现消息推送

需求是:通过webview.loadUrl()加载指定网页,网页中含有

 <script>
  $(function(){

    $.ajax({
      url:"http://127.0.0.1:9091/myapp/login",
      type:"GET",
      dataType: 'jsonp',
      jsonp: 'callback',
      data: {key:'123456'},
      success: function (rsp){
        alert(rsp.code);
        if(rsp.code == 0){
          alert(rsp.code);
          window.location.href = "http://myapp.com/index.php";
        }else{
          alert(rsp.msg);
        }
      }
    });

  });
</script>

该方法会向手机的9091端口发送请求,当返回指定字符串"success"时会自动跳转到新页面。
我的做法是通过NanoHttp开启手机端口服务器,并接收到请求后解析参数拿到callback的value:mCallback,返回字符串内容被封装成 mCallback+"({"success"})",传递回去。
刚开始的做法是成功的,明显看到了页面跳转。后来在一些本来正确显示的手机上就出现了问题,比如:1. 开启服务器失败 2. 响应数据后js没有接收到

所有种种能够使用的方式都检查了一遍,如webview的原因,手机本身的问题等等,仍然没有找到原因。同时NanoHttp也是基于Socket协议搭建的服务器,中间经历了一些封装之后使请求、相应、IO流与HTTP请求一样,但为何单独使用Socket去write相同的内容却无法使js响应!

郭老师能否帮忙解答一下上面的两个问题!

不知道你这个问题是否已经解决, 如果还没有解决的话:

如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^