In my application Location update stops after reboot the device. i'm using both gps and network to find a current location in my application,after reboot gps is working correctly but when i turn off the gps the app is unfortunately closed. this is my problem
this is my code Servicestart.java
public class Servicestart extends Service {
boolean gps_enabled = false;
boolean network_enabled = false;
@Override
public IBinder onBind(Intent arg0) {
// TODO Auto-generated method stub
return null;
}
@Override
public void onCreate() {
// TODO Auto-generated method stub
Log.i("service started", "start");
final LocationManager locMan = (LocationManager) getSystemService(Context.LOCATION_SERVICE);
if(userFunctions.isUserLoggedIn(getApplicationContext())){
if(Broadcast.check==false)
{
LocationListener locatioListner = new LocationListener() {
public void onStatusChanged(String provider, int status, Bundle extras) {
// TODO Auto-generated method stub
}
public void onProviderEnabled(String provider) {
// TODO Auto-generated method stub
}
public void onProviderDisabled(String provider) {
// TODO Auto-generated method stub
get();
}
public void onLocationChanged(Location location) {
Log.i("location", "loc");
String latitude=String.valueOf(location.getLatitude());
String longtitude=String.valueOf(location.getLongitude());
//location updated starts here
}
};
locMan.requestLocationUpdates(LocationManager.GPS_PROVIDER, 0, 0, locatioListner);
}
}
}
void get()
{
final LocationManager locMan = (LocationManager) getSystemService(Context.LOCATION_SERVICE);
gps_enabled = locMan.isProviderEnabled(LocationManager.GPS_PROVIDER);
network_enabled = locMan.isProviderEnabled(LocationManager.NETWORK_PROVIDER);
if (!gps_enabled && !network_enabled) { Context context = getApplicationContext();
int duration = Toast.LENGTH_SHORT;
Toast toast = Toast.makeText(context, "nothing is enabled", duration);
toast.show();
}
LocationListener locatioListnerGps = new LocationListener() {
public void onStatusChanged(String provider, int status, Bundle extras) {
}
public void onProviderEnabled(String provider) {
Toast.makeText(getApplicationContext(), "gpsenabled", 1000).show();
}
public void onProviderDisabled(String provider) {
Toast.makeText(getApplicationContext(), "gps disable", 1000).show();
get();
}
public void onLocationChanged(Location location) {
String latitude=String.valueOf(location.getLatitude());
String longtitude=String.valueOf(location.getLongitude());
//location updated starts here
}
};
LocationListener locationListenerNetwork = new LocationListener() {
public void onStatusChanged(String provider, int status, Bundle extras) {
}
public void onProviderEnabled(String provider) {
Toast.makeText(getApplicationContext(), "gpsenabled", 1000).show();
}
public void onProviderDisabled(String provider) {
Toast.makeText(getApplicationContext(), "gps disable", 1000).show();
get();
}
public void onLocationChanged(Location location) {
String latitude=String.valueOf(location.getLatitude());
String longtitude=String.valueOf(location.getLongitude());
//location updated starts here
}
};
if (gps_enabled)
{
locMan.requestLocationUpdates(LocationManager.GPS_PROVIDER, 0, 0,
locatioListnerGps);
locMan.removeUpdates( locationListenerNetwork);
}
if(network_enabled){
locMan.requestLocationUpdates(LocationManager.NETWORK_PROVIDER, 0, 0,
locationListenerNetwork);
locMan.removeUpdates( locatioListnerGps);
}
}
}
please help and guide me...
because i'm beginer
Thanks in advance...