[英]Android Push Notification Service
目前,我有一个Spring后端,并且我的android应用上有一个websocket,正在监听更改。 如果有更改,新数据将添加到我的应用程序布局中。 现在,我想在发生更改但应用未运行时通知用户。
阅读一些文章后,我发现可以由GCM(FCM)完成。 但是我不想仅仅因为这个而改变我的后端。 所以我的问题是:
即使应用未运行,如何保持WebSocket连接?
如果服务是解决方案,如何将WebSocket实例从Activity传递给Service?
如果有人可以给我一些想法,那将真的帮助我。 谢谢你的帮助 :)
如果要实现后台运行服务,则需要创建前台服务 。 因为Google限制了Android O的后台执行。
您可以在onStartCommand方法中处理套接字:
public class SocketService extends Service {
...
@Override
public int onStartCommand(Intent intent, int flags, int startId) {
try {
WebSocketClient client = new WebSocketClient(new URI("http://myserver.hu")) {
@Override
public void onOpen(ServerHandshake handshakedata) {
}
@Override
public void onMessage(String message) {
}
@Override
public void onClose(int code, String reason, boolean remote) {
}
@Override
public void onError(Exception ex) {
}
}
} catch (URISyntaxException e) {
e.printStackTrace();
}
return START_STICKY;
}
}
但是我认为FCM是推送消息的更好选择。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.