Android后台服务保活解决方案二

本文介绍如何在Android中创建并保持后台服务运行,即使在屏幕关闭时也能持续播放音乐和进行位置更新。通过使用hellodaemon框架,开发者可以在应用转到后台时避免系统自动终止服务。此外,文章还详细说明了如何在服务中集成高德地图SDK以获取精确的地理位置信息。

将Android后台服务设置为前台,并且一直播放音乐,可以保证在手机屏幕休眠后保持继续运行,但此方案比较耗电,可以使用开源框架实现后台服务保活。

使用Android Studio开发工具,它使用Gradle管理项目,在build.gradle文件中引入开源框架。

一、引入com.xdandroid:hellodaemon

compile ‘com.xdandroid:hellodaemon:+’
在这里插入图片描述

二、设计Service,继承AbsWorkService

重新这六个方法
在这里插入图片描述

package com.hk.ecology.service;

import android.annotation.SuppressLint;
import android.content.Intent;
import android.os.IBinder;
import android.util.Log;

import androidx.annotation.Nullable;

import com.amap.api.location.AMapLocation;
import com.amap.api.location.AMapLocationClient;
import com.amap.api.location.AMapLocationClientOption;
import com.amap.api.location.AMapLocationListener;
import com.hk.ecology.logic.HttpCallBack;
import com.hk.ecology.logic.HttpRequest;
import com.hk.ecology.model.BaseModel;
import com.hk.ecology.model.WxOrderInfo;
import com.hk.ecology.util.SPUtil;
import com.hk.ecology.util.Util;
import com.xdandroid.hellodaemon.AbsWorkService;
import com.xdandroid.hellodaemon.DaemonEnv;

import java.util.List;
import java.util.TimerTask;

public class KeepService extends AbsWorkService implements HttpCallBack {
   
   
    private Boolean isRunning = false;
    public static Boolean isStop = false;
    java.util.Timer timer = new java.util.Timer(true);
    private AMapLocationClientOption locationOption = new AMapLocationClientOption();
    private AMapLocationClient locationClient = null;

    public void stopService() {
   
   
        try {
   
   
            isRunning = false;

            //AbsWorkService.cancelJobAlarmSub(
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值