Pusher没有使用Phonegap for Android

时间:2012-08-26 17:02:43

标签: android cordova pusher

我正面临一个问题,非常感谢你的帮助...

  

Android SDK:4.0
  Phonegap:1.8.1
  Pusher:1.12

我使用Phonegap创建了一个Android项目,需要通过Pusher接收服务器通知。

我在Eclipse和AVD模拟器中运行它,但问题是每次我尝试建立与推送器的连接时,我都会从绑定到Unavailable获得state_change状态。 / p>

我已经在模拟器浏览器中测试了与Internet的连接,它运行正常。我还通过在Firefox上测试我的代码来测试服务器是否正在响应并且Pusher密钥是正确的。

这是我遵循的步骤:

  1. 我已将WebSocket.javaWebSocketFactory.java个文件包含在src文件夹中。
  2. 我已将websocket.js个文件包含在我的js文件夹中,并在index.html文件中包含了一个引用。
  3. 我在索引文件中包含了对http://js.pusher.com/1.12/pusher.js的引用。
  4. 我在Android App.java文件中包含以下行:this.appView.addJavascriptInterface(new WebSocketFactory(this),“WebSocketFactory”);

  5. 这是我用来连接Pusher的代码:

  6. // Connect
    
    var pusher = new Pusher(CONFIG.PUSHER.APP_KEY);
    pusher.connection.bind('state_change', connectionStateChange);
    
    function connectionStateChange(state) {
        alert(state.current);
    }
    

    有什么我想念的吗?有关连接无效的原因或检查位置的任何想法?

    感谢您的帮助。

    Chadid

1 个答案:

答案 0 :(得分:0)

对于pusher-js及以上版本2.x,该库可在PhoneGap中使用,无需任何其他要求或设置。只需包含该库并使用它 - 无需WebSocket.javaWebSocketFactory.java


对于版本1.x,此博客文章和相关代码演示了如何让Pusher使用PhoneGap: http://blog.pusher.com/2012/7/5/pusher-on-phonegap-for-android