Android服务没有停止

发布于 2024-12-05 11:11:27 字数 695 浏览 0 评论 0原文

我有一个主类,有两个按钮来启动和停止服务。

public void onClick(View src) {
    switch (src.getId()) {
    case R.id.buttonStart:
        Log.d(TAG, "onClick: starting srvice");
        myService = new Intent(this, MyService.class);
        startService(myService);
        break;
    case R.id.buttonStop:
        Log.d(TAG, "onClick: stopping srvice");
        stopService(myService);
        break;
    }
}

启动服务旨在将当前 GPS 坐标发送到服务器。它启动完美,但没有在单击按钮时停止。

在 MYService.java 中,我有 onDestroy 方法的代码。

public void onDestroy() {
    Toast.makeText(this, "My Service Stopped", Toast.LENGTH_LONG).show();
    Log.d(TAG, "onDestroy");
}

请帮忙如何杀死这个服务。

I have a main class with two buttons to start and stop the service.

public void onClick(View src) {
    switch (src.getId()) {
    case R.id.buttonStart:
        Log.d(TAG, "onClick: starting srvice");
        myService = new Intent(this, MyService.class);
        startService(myService);
        break;
    case R.id.buttonStop:
        Log.d(TAG, "onClick: stopping srvice");
        stopService(myService);
        break;
    }
}

Start Service intended to send current GPS coordinates to the server. it starts perfectely but did not stop on button click.

In MYService.java i have this code onDestroy method.

public void onDestroy() {
    Toast.makeText(this, "My Service Stopped", Toast.LENGTH_LONG).show();
    Log.d(TAG, "onDestroy");
}

Please help how to kill this Service.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

一江春梦 2024-12-12 11:11:27

尝试使用此方法停止服务 stopService(itnt_BackServices ); 在此示例中 itnt_BackServices 是服务名称。您不能停止服务类中的服务,但可以停止任何活动。

try this for stop services stopService(itnt_BackServices ); in this example itnt_BackServices is name of services. you cant stop services in services class but stop in any activity.

人生百味 2024-12-12 11:11:27

尝试将其添加到您的服务中

@Override
public int onStartCommand(Intent intent, int flags, int startId) {
    this.startId = startId;
    return mStartMode;
}

@Override
public void onDestroy() {
    stopSelf(startId);
}

Try adding this to your service

@Override
public int onStartCommand(Intent intent, int flags, int startId) {
    this.startId = startId;
    return mStartMode;
}

@Override
public void onDestroy() {
    stopSelf(startId);
}
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文