我在Ruby Motion项目中使用了libPusher pod,但遇到了一个问题,我的代码在REPL中使用但不在app本身中。
当我在viewDidAppear
方法中尝试此代码时,它成功连接,然后在频道订阅调用期间断开连接。
当我在控制台中尝试它时,它会完美地连接和订阅。 (相同代码)
我想弄明白:
我正在使用Ruby Motion的pod v2.31中的v 1.5
作为参考,我也使用ProMotion框架,但我怀疑这与该问题有什么关系。
这是我的代码:
client = PTPusher.pusherWithKey("my_pusher_key_here", delegate:self, encrypted:true)
client.connect
channel = client.subscribeToChannelNamed("test_channel_1")
channel.bindToEventNamed('status', target: self, action: 'test_method:')
答案 0 :(得分:0)
我通过将连接和订阅调用分成单独的生命周期方法来实现它。
我说:
client = PTPusher.pusherWithKey("my_pusher_key_here", delegate:self, encrypted:true)
client.connect
进入viewDidLoad方法
和
channel = client.subscribeToChannelNamed("test_channel_1")
channel.bindToEventNamed('status', target: self, action: 'test_method:')
进入viewDidAppear方法。
我不能说我确切知道为什么会这样,但我认为它与调用之间的时间有关。连接过程必须需要一点时间才能完成。