Android服务上的GPS [英] GPS on Android Service

查看:124
本文介绍了Android服务上的GPS的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

在这段代码上我希望每隔3秒获取一次gps位置。但是当我在我的设备上运行这个程序时,它告诉我每次纬度和经度都是0。我该如何处理这个问题?



on this code i want to get the gps location every 3 seconds. but when i run this program on my device it tells me that latitude and longitude are both 0 every time. how should i handle this problem?

public class LocationService extends Service {
	final static String TAG = "MyService";
	
	double latitude ;
 	double Longitude ;
 	LocationManager lm;
	LocationListener ll;
	
	@Override
	public IBinder onBind(Intent intent) {
		return null;
	}

	@Override
	public void onCreate() {
		
		Log.d(TAG, "onCreate");
		super.onCreate();
	}

	@Override
	public int onStartCommand(Intent intent, int flags, int startId) {
		
						new Thread() {
							public void run() {
								Looper.prepare();
								while(true){
								lm = (LocationManager) getSystemService(LOCATION_SERVICE);
								ll = new MyLocationListener();
								lm.requestLocationUpdates(LocationManager.GPS_PROVIDER, 0, 0, ll);
//when i log here , it gives me wrong answer 							

Log.d(TAG,Double.toString(latitude));
						try {
							Thread.sleep(3000);
						} catch (InterruptedException e) {
							e.printStackTrace();
							}
							}
						}
					}.start();
						return super.onStartCommand(intent, flags, startId);
					
	}
	@Override
	public void onDestroy() {
		Log.d(TAG, "OnDestroy");
		super.onDestroy();
	}
	
    class MyLocationListener implements LocationListener{
			@Override
			public void onLocationChanged(Location location) {
				//when i log here , it gives me correct answer
				double lat = location.getLatitude();
				double lon = location.getLongitude();
				latitude = lat;
				Longitude = lon;
			}

			@Override
			public void onProviderDisabled(String arg0) {
			}

			@Override
			public void onProviderEnabled(String arg0) {
			}

			@Override
			public void onStatusChanged(String arg0, int arg1, Bundle arg2) {
			}
     };
}

推荐答案

看看这个: Android用户交互和传感器 [ ^ ]


这篇关于Android服务上的GPS的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆