Android 启用gps后,每30分钟发送一次位置更新
嗨,我在这里取代码。我希望在gps启用时每30分钟通过短信发送一次位置更新。现在我的问题是这个代码发送短信顺序。所以,我想在这里使用线程。如何使用线程?谁来帮我Android 启用gps后,每30分钟发送一次位置更新,android,gps,sms,Android,Gps,Sms,嗨,我在这里取代码。我希望在gps启用时每30分钟通过短信发送一次位置更新。现在我的问题是这个代码发送短信顺序。所以,我想在这里使用线程。如何使用线程?谁来帮我 protected LocationManager locationManager; protected LocationListener locationListener; @Override public void onCreate(Bundle savedInstanceState) { super.onCre
protected LocationManager locationManager;
protected LocationListener locationListener;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.autocapture);
locationManager = (LocationManager) getSystemService(Context.LOCATION_SERVICE);
locationManager.requestLocationUpdates(LocationManager.GPS_PROVIDER, 0, 0, this);
}
@Override
public void onLocationChanged(Location location) {
double lati = location.getLatitude();
double longi = location.getLongitude();
final String l_lati = String.valueOf(lati).trim();
final String l_longi = String.valueOf(longi).trim();
sendSMS(l_lati,l_longi);
}
@Override
public void onProviderDisabled(String provider) {
Log.d("Latitude","disable");
}
@Override
public void onProviderEnabled(String provider) {
Log.d("Latitude","enable");
}
@Override
public void onStatusChanged(String provider, int status, Bundle extras) {
Log.d("Latitude","status");
}
实际上,您需要将
long minTime
参数设置为30分钟,然后每30分钟更新一次。
在这里:
必须设置30*60*1000,而不是0
请参阅文件:
,long,float,android.location.LocationListener)用此编码替换onCreate块
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.autocapture);
locationManager = (LocationManager) getSystemService(Context.LOCATION_SERVICE);
locationManager.requestLocationUpdates(LocationManager.GPS_PROVIDER, 30 * 60 * 1000, 0, this);
sendSMS();
finish();
}
你有没有特别尝试过添加线程?
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.autocapture);
locationManager = (LocationManager) getSystemService(Context.LOCATION_SERVICE);
locationManager.requestLocationUpdates(LocationManager.GPS_PROVIDER, 30 * 60 * 1000, 0, this);
sendSMS();
finish();
}