您的位置:首页 > 其它

手机卫士项目——手机防盗GPS追踪技术

2015-07-16 07:43 387 查看
1.个人感想由于随着手机不停的位置移动,手机防盗这款功能  是假设手机在丢失的情况下  要在后台偷偷的运行所以要用到Service服务(四大组件之一)

package com.android.mobilesafe.service;

import android.app.Service;

import android.content.Intent;

import android.content.SharedPreferences;

import android.content.SharedPreferences.Editor;

import android.location.Criteria;

import android.location.Location;

import android.location.LocationListener;

import android.location.LocationManager;

import android.os.Bundle;

import android.os.IBinder;

public class GPSService extends Service {

private SharedPreferences sp;

// 1.声明全局变量
private LocationManager lm;
private MyLocationListener listener;

@Override
public IBinder onBind(Intent intent) {
// TODO Auto-generated method stub
return null;
}

@Override
public void onCreate() {
super.onCreate();
sp = getSharedPreferences("config", MODE_PRIVATE);
// 2.获取位置管理器
lm = (LocationManager) getSystemService(LOCATION_SERVICE);

// 3.位置条件
Criteria criteria = new Criteria();
// 
criteria.setAccuracy(Criteria.ACCURACY_FINE);
// criteria.setAccuracy(Criteria.ACCURACY_FINE);//精确度
// criteria.setAltitudeRequired(false);//
// criteria.setBearingRequired(false);//
// criteria.setCostAllowed(true);//
// criteria.setPowerRequirement(Criteria.POWER_LOW);//耗电量

// 获取最好的位置服务提供者
String provider = lm.getBestProvider(criteria, true);
listener = new MyLocationListener();
lm.requestLocationUpdates(provider, 0, 0, listener);

}

@Override
public void onDestroy() {
super.onDestroy();
// 4.取消监听
lm.removeUpdates(listener);
listener = null;
}

class MyLocationListener implements LocationListener {

// 
@Override
public void onLocationChanged(Location location) {
// 1.经纬度
String longitude = "j:" + location.getLongitude()+"\n";
String latitude = "w:" + location.getLatitude()+"\n";
String accuracy = "a:" + location.getAccuracy()+"\n";

//

//
Editor editor = sp.edit();
editor.putString("lastlocation", longitude+latitude+accuracy);
editor.commit();

//
// //2.
// TextView tv = new TextView(getApplicationContext());
// tv.setText(longitude+"\n"+latitude+"\n"+accuracy);
//
// setContentView(tv);

}

//
@Override
public void onStatusChanged(String provider, int status, Bundle extras) {
// TODO Auto-generated method stub

}

/**

*/
@Override
public void onProviderEnabled(String provider) {
// TODO Auto-generated method stub

}

// 
@Override
public void onProviderDisabled(String provider) {
// TODO Auto-generated method stub

}

}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  GPS