gpt4 book ai didi

java - 如何在应用程序关闭时建立服务器连接

转载 作者:行者123 更新时间:2023-11-29 04:06:28 25 4
gpt4 key购买 nike

在我的 Android 应用程序中,我想建立一个服务器连接,它也应该在应用程序关闭时运行。目标是从服务器获取通知并显示在设备上

我尝试创建一个服务,在其中启动 ServerConnection-Thread,但当我关闭应用程序时线程停止。

public class InternetService extends Service {
public static final String START_SERVER = "startserver";
public InternetService(){

}

@Override
public int onStartCommand(Intent intent, int flags, int startID){
String action = intent.getAction();
if(action.equals(START_SERVER)){
//new thread to start server in non-ui-thread
Thread server = new Thread(new Server());
server.start();
}


return START_STICKY;
}
}

public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
Intent server = new Intent(this, InternetService.class);
server.setAction(InternetService.START_SERVER);
startService(server);
}
}


public class Server implements Runnable {
public void run(){
server = new Socket(IP_ADDRESS, PORT);
out = new PrintWriter(server.getOutputStream());
in = new BufferedReader(new InputStreamReader(server.getInputStream()));
}
}

最佳答案

服务的行为随着版本的提高而改变。看看https://developer.android.com/about/versions/oreo/background

如果你想从服务器发送通知尝试使用 Firebase .

关于java - 如何在应用程序关闭时建立服务器连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58342520/

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