添加libgpsrelaysentinel类库初始源码
This commit is contained in:
@@ -56,6 +56,7 @@ android {
|
||||
}
|
||||
|
||||
dependencies {
|
||||
api project(':libgpsrelaysentinel')
|
||||
|
||||
api 'com.google.code.gson:gson:2.10.1'
|
||||
|
||||
|
||||
@@ -9,12 +9,15 @@ import android.content.Intent;
|
||||
import android.location.Location;
|
||||
import android.location.LocationListener;
|
||||
import android.location.LocationManager;
|
||||
import android.os.Binder;
|
||||
import android.os.Build;
|
||||
import android.os.Bundle;
|
||||
import android.os.IBinder;
|
||||
import androidx.core.app.NotificationCompat;
|
||||
import cc.winboll.studio.libappbase.LogUtils;
|
||||
import cc.winboll.studio.libgpsrelaysentinel.manager.GpsSubscribeManager;
|
||||
import cc.winboll.studio.libgpsrelaysentinel.manager.SubscribeLocationManager;
|
||||
import cc.winboll.studio.libgpsrelaysentinel.model.GpsSubscribeMsg;
|
||||
import java.util.Map;
|
||||
|
||||
public class MainService extends Service {
|
||||
|
||||
@@ -72,6 +75,31 @@ public class MainService extends Service {
|
||||
String gpsInfo = "Lat: " + location.getLatitude() + ", Lng: " + location.getLongitude();
|
||||
LogUtils.d(TAG, "Location changed: " + gpsInfo);
|
||||
updateNotification(gpsInfo);
|
||||
|
||||
//管理器初始化
|
||||
GpsSubscribeManager subscribeManager = GpsSubscribeManager.getInstance();
|
||||
SubscribeLocationManager locationManager = SubscribeLocationManager.getInstance();
|
||||
|
||||
//遍历所有订阅者做距离判断+定点更新
|
||||
Map<String, GpsSubscribeMsg> subscribeMap = subscribeManager.getSubscribeMap();
|
||||
for (Map.Entry<String, GpsSubscribeMsg> entry : subscribeMap.entrySet()) {
|
||||
String sid = entry.getKey();
|
||||
GpsSubscribeMsg subscribeMsg = entry.getValue();
|
||||
|
||||
double nowLat = location.getLatitude();
|
||||
double nowLng = location.getLongitude();
|
||||
|
||||
//判断是否满足推送
|
||||
boolean canPush = locationManager.isNeedPush(sid, nowLat, nowLng);
|
||||
if (canPush) {
|
||||
//执行发送GPS广播
|
||||
//sendGpsBroadcast(...);
|
||||
|
||||
//推送成功立刻刷新订阅者基准坐标
|
||||
locationManager.updateSubscriberPoint(sid, nowLat, nowLng);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
Reference in New Issue
Block a user