gpt4 book ai didi

android - 如何在具有多个 Activity 的 Android 应用程序上使用 Pusher?

转载 作者:行者123 更新时间:2023-11-30 01:45:57 24 4
gpt4 key购买 nike

我们有这个 android 应用程序,我们在其中使用 Pusher 将实时更新从我们的服务器中继到 android 客户端。

问题是如果我们将以下代码 fragment 添加到我们所有的 Activity 页面,Pusher 会为每个页面打开一个新的网络套接字。

如何与推送器建立一个连接并将其用于我们所有的 Activity ?

String apiKey = "abcde";
PusherOptions options = (new PusherOptions()).setEncrypted(false);
Pusher ph = new Pusher(apiKey, options);
ph.connect(new ConnectionEventListener() {
@Override
public void onConnectionStateChange(ConnectionStateChange change) {
System.out.println("State changed to " + change.getCurrentState() +
" from " + change.getPreviousState());
}

@Override
public void onError(String message, String code, Exception e) {
System.out.println("There was a problem connecting!");
}
}, ConnectionState.ALL);

if(pusher_channel != null){
Channel channel = ph.subscribe(pusher_channel);

// Bind to listen for events called "my-event" sent to "my-channel"
channel.bind("user_is_typing", new SubscriptionEventListener() {
@Override
public void onEvent(String channel, String event, String data) {
//System.out.println("Received event with data: " + data);
}
});


}

最佳答案

我们通过将连接脚本放在以下位置解决了这个问题:

public class MyApplication extends MultiDexApplication

现在我们的应用程序只打开一个 websocket。

关于android - 如何在具有多个 Activity 的 Android 应用程序上使用 Pusher?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33723428/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com