0

I will explain the process of my app...

First it is showing google maps then I'm drawing some polylines and then I'm choosing some contact to send him coordinates(all of that was in main activity and it's working)

That's the code from my main activity:

public class MainActivity extends FragmentActivity {

static boolean active = false;
@Override
public void onStart() {

   super.onStart();

   active = true;
}

@Override
public void onStop() {
   super.onStop();

   active = false;
}
public static boolean isActive(){
    return active;
}

private static final int PICK_CONTACT = 1;

GoogleMap googleMap;
ArrayList<LatLng>  points= new  ArrayList<LatLng>() ;

Double glat;
Double glon;
int find_someone=0;
int save=0;

@Override
protected void onCreate(Bundle savedInstanceState) {

    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

// Getting reference to the SupportMapFragment of activity_main.xml

SupportMapFragment fm = (SupportMapFragment)    getSupportFragmentManager().findFragmentById(R.id.map);

// Getting GoogleMap object from the fragment
googleMap = fm.getMap();

// Enabling MyLocation Layer of Google Map
googleMap.setMyLocationEnabled(true);

// Enabling buildings of Google Map
googleMap.setBuildingsEnabled(true);

googleMap.setOnMapLoadedCallback(new OnMapLoadedCallback() {

    @Override
    public void onMapLoaded() {
Location lm = googleMap.getMyLocation();
if (lm!=null){
CameraPosition cp = new CameraPosition.Builder()
.target(new LatLng(lm.getLatitude(), lm.getLongitude()))
.zoom(17)
.build();     
googleMap.animateCamera(CameraUpdateFactory.newCameraPosition(cp));
}
     }
});

// Setting OnClick event listener for the Google Map
googleMap.setOnMapClickListener(new OnMapClickListener() {

    @Override
    public void onMapClick(LatLng point) {

        // Instantiating the class MarkerOptions to plot marker on the map
        MarkerOptions markerOptions = new MarkerOptions();

        // Setting latitude and longitude of the marker position
        markerOptions.position(point);

        // Setting title of the infowindow of the marker
        markerOptions.title("Position");

        // Setting the content of the infowindow of the marker
        markerOptions.snippet("Latitude:"+point.latitude+","+"Longitude:"+point.longitude);

        // Instantiating the class PolylineOptions to plot polyline in the map
        PolylineOptions polylineOptions = new PolylineOptions();

        // Setting the color of the polyline
        polylineOptions.color(Color.BLUE);

        // Setting the width of the polyline
        polylineOptions.width(6);

        // Adding the taped point to the ArrayList

        points.add(point);

        // Setting points of polyline
        polylineOptions.addAll(points);

        // Adding the polyline to the map
        googleMap.addPolyline(polylineOptions);

        // Adding the marker to the map
        googleMap.addMarker(markerOptions);
    }
});

googleMap.setOnMapLongClickListener(new OnMapLongClickListener() {

    @Override
    public void onMapLongClick(LatLng point) {
        // Clearing the markers and polylines in the google map
        googleMap.clear();

        // Empty the array list
        points.clear();
    }
}); 

if (String.valueOf(points)!=null){
    Button pickContact = (Button) findViewById(R.id.button1);

    pickContact.setOnClickListener(new OnClickListener(){

        public void onClick(View v) {
            save=1;
            Intent intent = new Intent(Intent.ACTION_GET_CONTENT);
            intent.setType(ContactsContract.CommonDataKinds.Phone.CONTENT_ITEM_TYPE);
            startActivityForResult(intent, 1);
                  }
    });
    }

    else{
         Toast.makeText(this, "select points", Toast.LENGTH_LONG).show();
    }
}

@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
    if (data != null) {
        Uri uri = data.getData();

        if (uri != null) {
            Cursor c = null;
            try {
                c = getContentResolver().query(uri, new String[]{ 
                            ContactsContract.CommonDataKinds.Phone.NUMBER,  
                            ContactsContract.CommonDataKinds.Phone.TYPE },
                        null, null, null);

                if (c != null && c.moveToFirst()) {
                    String number = c.getString(0);
                    int type = c.getInt(1);
                    showSelectedNumber(type, number);
                    System.out.println(number);
                    System.out.println("val: "+String.valueOf(points));
                    if (save==1)
                            {
                    SmsManager sm = SmsManager.getDefault();
                    ArrayList<String> parts =sm.divideMessage(String.valueOf(points));
                    int numParts = parts.size();

                    ArrayList<PendingIntent> sentIntents = new ArrayList<PendingIntent>();
                    ArrayList<PendingIntent> deliveryIntents = new ArrayList<PendingIntent>();

                    for (int i = 0; i < numParts; i++) {
                    sentIntents.add(PendingIntent.getBroadcast(getBaseContext(), 0, getIntent(), 0));
                    deliveryIntents.add(PendingIntent.getBroadcast(getBaseContext(), 0, data, 0));
                    }

                    sm.sendMultipartTextMessage(number,null, parts, sentIntents, deliveryIntents);
                    }
                }
            }
             finally {
                if (c != null) {
                    c.close();
                }
            }
        }
    }
}

public void showSelectedNumber(int type, String number) {
    Toast.makeText(this, type + ": " + number, Toast.LENGTH_LONG).show();
}

@Override
public boolean onCreateOptionsMenu(Menu menu) {
     Inflate the menu; this adds items to the action bar if it is present.

    return true;
}
}

But then I see this logcat comes out running inifine ... it is caused from the service that I'm running

05-13 00:18:54.950: D/Netork(16444): Network
05-13 00:18:54.950: D/Netork(16444): Network
05-13 00:18:54.950: D/Netork(16444): Network
05-13 00:18:54.950: D/Netork(16444): Network
05-13 00:18:54.955: D/Netork(16444): Network
05-13 00:18:54.955: D/Netork(16444): Network
05-13 00:18:54.955: D/Netork(16444): Network
05-13 00:18:54.955: D/Netork(16444): Network
05-13 00:18:54.960: D/Netork(16444): Network
05-13 00:18:54.960: D/Netork(16444): Network
05-13 00:18:54.960: D/Netork(16444): Network
05-13 00:18:54.960: D/Netork(16444): Network
05-13 00:18:54.965: D/Netork(16444): Network
05-13 00:18:54.965: D/Netork(16444): Network
05-13 00:18:54.965: D/Netork(16444): Network
05-13 00:18:54.970: D/Netork(16444): Network
05-13 00:18:54.970: D/Netork(16444): Network
05-13 00:18:54.970: D/Netork(16444): Network
05-13 00:18:54.975: D/Netork(16444): Network
05-13 00:18:54.975: D/Netork(16444): Network
05-13 00:18:54.975: D/Netork(16444): Network
05-13 00:18:54.980: D/Netork(16444): Network
05-13 00:18:54.980: D/Netork(16444): Network
05-13 00:18:54.980: D/Netork(16444): Network
05-13 00:18:54.985: D/Netork(16444): Network
05-13 00:18:54.985: D/Netork(16444): Network
05-13 00:18:54.985: D/Netork(16444): Network
05-13 00:18:54.990: D/Netork(16444): Network
05-13 00:18:54.990: D/Netork(16444): Network
05-13 00:18:54.990: D/Netork(16444): Network
05-13 00:18:54.995: D/Netork(16444): Network
05-13 00:18:54.995: D/Netork(16444): Network
05-13 00:18:54.995: D/Netork(16444): Network
05-13 00:18:55.000: D/Netork(16444): Network
05-13 00:18:55.000: D/Netork(16444): Network
05-13 00:18:55.000: D/Netork(16444): Network
05-13 00:18:55.005: D/Netork(16444): Network
05-13 00:18:55.005: D/Netork(16444): Network
05-13 00:18:55.005: D/Netork(16444): Network
05-13 00:18:55.010: D/Netork(16444): Network
05-13 00:18:55.010: D/Netork(16444): Network
05-13 00:18:55.010: D/Netork(16444): Network
05-13 00:18:55.015: D/Netork(16444): Network
05-13 00:18:55.015: D/Netork(16444): Network
05-13 00:18:55.015: D/Netork(16444): Network
05-13 00:18:55.020: D/Netork(16444): Network
05-13 00:18:55.020: D/Netork(16444): Network
05-13 00:18:55.020: D/Netork(16444): Network
05-13 00:18:55.025: D/Netork(16444): Network
05-13 00:18:55.025: D/Netork(16444): Network
05-13 00:18:55.025: D/Netork(16444): Network
05-13 00:18:55.030: D/Netork(16444): Network
05-13 00:18:55.030: D/Netork(16444): Network
05-13 00:18:55.030: D/Netork(16444): Network
05-13 00:18:55.035: D/Netork(16444): Network
05-13 00:18:55.035: D/Netork(16444): Network
05-13 00:18:55.035: D/Netork(16444): Network
05-13 00:18:55.040: D/Netork(16444): Network
05-13 00:18:55.040: D/Netork(16444): Network
05-13 00:18:55.040: D/Netork(16444): Network
05-13 00:18:55.040: D/Netork(16444): Network
05-13 00:18:55.045: D/Netork(16444): Network
05-13 00:18:55.045: D/Netork(16444): Network
05-13 00:18:55.045: D/Netork(16444): Network
05-13 00:18:55.050: D/Netork(16444): Network
05-13 00:18:55.050: D/Netork(16444): Network
05-13 00:18:55.050: D/Netork(16444): Network
05-13 00:18:55.055: D/Netork(16444): Network
05-13 00:18:55.055: D/Netork(16444): Network
05-13 00:18:55.055: D/Netork(16444): Network
05-13 00:18:55.055: D/Netork(16444): Network
05-13 00:18:55.060: D/Netork(16444): Network
05-13 00:18:55.060: D/Netork(16444): Network
05-13 00:18:55.065: D/Netork(16444): Network
05-13 00:18:55.065: D/Netork(16444): Network
05-13 00:18:55.065: D/Netork(16444): Network
05-13 00:18:55.065: D/Netork(16444): Network
05-13 00:18:55.070: D/Netork(16444): Network
05-13 00:18:55.070: D/Netork(16444): Network
05-13 00:18:55.070: D/Netork(16444): Network
05-13 00:18:55.075: D/Netork(16444): Network
05-13 00:18:55.075: D/Netork(16444): Network
05-13 00:18:55.075: D/Netork(16444): Network
05-13 00:18:55.075: D/Netork(16444): Network
05-13 00:18:55.080: D/Netork(16444): Network
05-13 00:18:55.080: D/Netork(16444): Network
05-13 00:18:55.085: D/Netork(16444): Network
05-13 00:18:55.085: D/Netork(16444): Network
05-13 00:18:55.085: D/Netork(16444): Network
05-13 00:18:55.085: D/Netork(16444): Network
05-13 00:18:55.090: D/Netork(16444): Network
05-13 00:18:55.090: D/Netork(16444): Network
05-13 00:18:55.090: D/Netork(16444): Network
05-13 00:18:55.095: D/Netork(16444): Network
05-13 00:18:55.095: D/Netork(16444): Network
05-13 00:18:55.100: D/Netork(16444): Network
05-13 00:18:55.100: D/Netork(16444): Network
05-13 00:18:55.100: D/Netork(16444): Network
05-13 00:18:55.105: D/Netork(16444): Network
05-13 00:18:55.105: D/Netork(16444): Network
05-13 00:18:55.105: D/Netork(16444): Network
05-13 00:18:55.105: D/Netork(16444): Network
05-13 00:18:55.110: D/Netork(16444): Network
05-13 00:18:55.110: D/Netork(16444): Network
05-13 00:18:55.110: D/Netork(16444): Network
05-13 00:18:55.115: D/Netork(16444): Network
05-13 00:18:55.115: D/Netork(16444): Network
05-13 00:18:55.115: D/Netork(16444): Network
05-13 00:18:55.115: D/Netork(16444): Network
05-13 00:18:55.120: D/Netork(16444): Network
05-13 00:18:55.120: D/Netork(16444): Network
05-13 00:18:55.125: D/Netork(16444): Network
05-13 00:18:55.125: D/Netork(16444): Network
05-13 00:18:55.125: D/Netork(16444): Network
05-13 00:18:55.125: D/Netork(16444): Network
05-13 00:18:55.130: D/Netork(16444): Network
05-13 00:18:55.130: D/Netork(16444): Network
05-13 00:18:55.130: D/Netork(16444): Network
05-13 00:18:55.130: D/Netork(16444): Network
05-13 00:18:55.135: D/Netork(16444): Network
05-13 00:18:55.135: D/Netork(16444): Network
05-13 00:18:55.135: D/Netork(16444): Network
05-13 00:18:55.140: D/Netork(16444): Network
05-13 00:18:55.140: D/Netork(16444): Network
05-13 00:18:55.140: D/Netork(16444): Network
05-13 00:18:55.140: D/Netork(16444): Network
05-13 00:18:55.145: D/Netork(16444): Network
05-13 00:18:55.145: D/Netork(16444): Network
05-13 00:18:55.145: D/Netork(16444): Network
05-13 00:18:55.145: D/Netork(16444): Network
05-13 00:18:55.150: D/Netork(16444): Network
05-13 00:18:55.150: D/Netork(16444): Network
05-13 00:18:55.150: D/Netork(16444): Network
05-13 00:18:55.155: D/Netork(16444): Network
05-13 00:18:55.155: D/Netork(16444): Network
05-13 00:18:55.155: D/Netork(16444): Network
05-13 00:18:55.160: D/Netork(16444): Network
05-13 00:18:55.160: D/Netork(16444): Network
05-13 00:18:55.160: D/Netork(16444): Network
05-13 00:18:55.165: D/Netork(16444): Network
05-13 00:18:55.165: D/Netork(16444): Network
05-13 00:18:55.170: D/Netork(16444): Network
05-13 00:18:55.170: D/Netork(16444): Network
05-13 00:18:55.170: D/Netork(16444): Network
05-13 00:18:55.170: D/Netork(16444): Network
05-13 00:18:55.175: D/Netork(16444): Network
05-13 00:18:55.175: D/Netork(16444): Network
05-13 00:18:55.175: D/Netork(16444): Network
05-13 00:18:55.175: D/Netork(16444): Network
05-13 00:18:55.180: D/Netork(16444): Network
05-13 00:18:55.185: D/Netork(16444): Network
05-13 00:18:55.185: D/Netork(16444): Network
05-13 00:18:55.185: D/Netork(16444): Network
05-13 00:18:55.185: D/Netork(16444): Network
05-13 00:18:55.190: D/Netork(16444): Network
05-13 00:18:55.190: D/Netork(16444): Network
05-13 00:18:55.190: D/Netork(16444): Network
05-13 00:18:55.195: D/Netork(16444): Network
05-13 00:18:55.195: D/Netork(16444): Network
05-13 00:18:55.195: D/Netork(16444): Network
05-13 00:18:55.195: D/Netork(16444): Network
05-13 00:18:55.200: D/Netork(16444): Network
05-13 00:18:55.200: D/Netork(16444): Network
05-13 00:18:55.200: D/Netork(16444): Network
05-13 00:18:55.200: D/Netork(16444): Network
05-13 00:18:55.205: D/Netork(16444): Network
05-13 00:18:55.205: D/Netork(16444): Network
05-13 00:18:55.210: D/Netork(16444): Network
05-13 00:18:55.210: D/Netork(16444): Network
05-13 00:18:55.210: D/Netork(16444): Network
05-13 00:18:55.215: D/Netork(16444): Network
05-13 00:18:55.215: D/Netork(16444): Network
05-13 00:18:55.220: D/Netork(16444): Network
05-13 00:18:55.220: D/Netork(16444): Network
05-13 00:18:55.220: D/Netork(16444): Network
05-13 00:18:55.225: D/Netork(16444): Network
05-13 00:18:55.225: D/Netork(16444): Network
05-13 00:18:55.230: D/Netork(16444): Network
05-13 00:18:55.230: D/Netork(16444): Network
05-13 00:18:55.230: D/Netork(16444): Network
05-13 00:18:55.235: D/Netork(16444): Network
05-13 00:18:55.235: D/Netork(16444): Network
05-13 00:18:55.235: D/Netork(16444): Network
05-13 00:18:55.240: D/Netork(16444): Network
05-13 00:18:55.240: D/Netork(16444): Network
05-13 00:18:55.240: D/Netork(16444): Network
05-13 00:18:55.245: D/Netork(16444): Network
05-13 00:18:55.245: D/Netork(16444): Network
05-13 00:18:55.245: D/Netork(16444): Network
05-13 00:18:55.250: D/Netork(16444): Network
05-13 00:18:55.250: D/Netork(16444): Network
05-13 00:18:55.250: D/Netork(16444): Network
05-13 00:18:55.255: D/Netork(16444): Network
05-13 00:18:55.255: D/Netork(16444): Network
05-13 00:18:55.255: D/Netork(16444): Network
05-13 00:18:55.260: D/Netork(16444): Network
05-13 00:18:55.260: D/Netork(16444): Network
05-13 00:18:55.265: D/Netork(16444): Network
05-13 00:18:55.265: D/Netork(16444): Network
05-13 00:18:55.265: D/Netork(16444): Network
05-13 00:18:55.265: D/Netork(16444): Network
05-13 00:18:55.270: D/Netork(16444): Network
05-13 00:18:55.270: D/Netork(16444): Network
05-13 00:18:55.270: D/Netork(16444): Network
05-13 00:18:55.275: D/Netork(16444): Network
05-13 00:18:55.275: D/Netork(16444): Network
05-13 00:18:55.275: D/Netork(16444): Network
05-13 00:18:55.280: D/Netork(16444): Network
05-13 00:18:55.280: D/Netork(16444): Network
05-13 00:18:55.280: D/Netork(16444): Network
............................................

and boom my phone stucks and the service keep locking on Network ...

that's my service code:

public class GPSTRACKER extends Service implements LocationListener {

    //private final Context mContext=getBaseContext();

    // flag for GPS status
    boolean isGPSEnabled = false;

    // flag for network status
    boolean isNetworkEnabled = false;

    // flag for GPS status
    boolean canGetLocation = false;

    Location location; // location

    double latitude;// latitude
    double longitude; // longitude

    // The minimum distance to change Updates in meters
    private static final long MIN_DISTANCE_CHANGE_FOR_UPDATES = 1; 

    // The minimum time between updates in milliseconds
    private static final long MIN_TIME_BW_UPDATES =  60 ; 

    // Declaring a Location Manager
    protected LocationManager locationManager;

    //public GPSTRACKER(Context context) {
        //this.mContext = context;
    //}
    //WakeLock wakeLock;

    @Override

    public IBinder onBind(Intent arg0) {

        return null;
    }
    @Override
    public void onCreate() {
        super.onCreate();

            //PowerManager pm = (PowerManager) getSystemService(Context.POWER_SERVICE);

            //wakeLock = pm.newWakeLock(PowerManager.PARTIAL_WAKE_LOCK, "DoNotSleep");
    }
    @Override
    public void onStart(Intent intent, int startId) {

        Bundle extras = intent.getExtras();

                if (extras != null && !extras.isEmpty()) {  // has effect of unparcelling Bundle

                    String message = intent.getStringExtra("message");
                    String number = intent.getStringExtra("number");
                  //int pumber= Integer.parseInt(number.toString());

                    int p=0,j,i=1,t,success=0;
                    double[] d = new double[1000];

                    Matcher m = Pattern.compile("(?!=\\d\\.\\d\\.)([\\d.]+)").matcher(message);

                    while(m.find())
                    {
                       double  k = Double.parseDouble(m.group(1));
                       d[p]=k;
                       p++;
                     }

                     //if (message.contains(number)){
                        // Location h=getLocation();
                        // latitude=h.getLatitude();
                         //longitude = h.getLongitude();
                        // final LocalBroadcastManager localBroadcastManager =
                                   // LocalBroadcastManager.getInstance(getBaseContext());
                                    //intent.putExtra("lat",latitude);
                                   // intent.putExtra("lng",longitude);
                                    //localBroadcastManager.sendBroadcast(new Intent());

                   // }
                     double line;
                     double[] ship = new double[1000] ;
                     double[] b = new double[1000] ;

                    ship[0]=SlopeCalc(d[2],d[0],d[3],d[1]);
                    b[0]=d[0]-ship[0]*d[1];


                    if (p>3)
                    {

                    for(j=2;j<p;j++)
                    {
                        if(j+2<p){
                        ship[i]=SlopeCalc(d[j+2],d[j-2+2],d[j+1+2],d[j-1+2]);
                        b[i]=d[j]-(ship[i]*d[j+1]);

                        j++;
                        i++;
                        }
                        else{
                            break;
                        }
                    }
                    }

                    while(true)
                    {
                     Location h=getLocation();
                     latitude=h.getLatitude();
                     longitude = h.getLongitude();
                     //System.out.println(latitude);
                    // System.out.println(longitude);
                    for (t=0;t<i;t++){
                    line=ship[t]*longitude+b[t]-latitude;

                    if (line>-0.001 && line<0.001){
                        success=1;
                        break;
                    }
                    }
                    if (success==1){
                    break;
                    }

                    }
                    if ( success==1){
                        SmsManager.getDefault().sendTextMessage(number, null, "HI WHATS UP DUDE HE IS THER", null, null);
                        //wakeLock.release();
                        stopService(intent);
                    }
                }
                else
                {
                    Log.i("Log", "Bundle is null");
                }
    }           

    public static double SlopeCalc(double y2,double y1, double x2,double x1){

        double sou;
        sou=(y2-y1)/(x2-x1);
        return sou;
    }


    /**
     * Stop using GPS listener
     * Calling this function will stop using GPS in your app
     * */
            public void stopUsingGPS(){
            if(locationManager != null){
            locationManager.removeUpdates((android.location.LocationListener) GPSTRACKER.this);
            }       
    }

    /**
     * Function to get latitude
     * */
    public double getLatitude(){
        if(location != null){
            latitude = location.getLatitude();
        }

        // return latitude
        return latitude;
    }

    /**
     * Function to get longitude
     * */
    public double getLongitude(){
        if(location != null){
            longitude = location.getLongitude();
        }

        // return longitude
        return longitude;
    }

    /**
     * Function to check GPS/wifi enabled
     * @return boolean
     * */
    public boolean canGetLocation() {
        return this.canGetLocation;
    }

    /**
     * Function to show settings alert dialog
     * On pressing Settings button will launch Settings Options
     * */
    //public void showSettingsAlert(){
        //AlertDialog.Builder alertDialog = new AlertDialog.Builder(mContext);

        // Setting Dialog Title
       // alertDialog.setTitle("GPS is settings");

        // Setting Dialog Message
       // alertDialog.setMessage("GPS is not enabled. Do you want to go to settings menu?");

        // On pressing Settings button
       // alertDialog.setPositiveButton("Settings", new DialogInterface.OnClickListener() {
         //   public void onClick(DialogInterface dialog,int which) {
            //  Intent intent = new Intent(Settings.ACTION_LOCATION_SOURCE_SETTINGS);
                //mContext.startActivity(intent);
           // }
       // });

        // on pressing cancel button
       // alertDialog.setNegativeButton("Cancel", new DialogInterface.OnClickListener() {
        //    public void onClick(DialogInterface dialog, int which) {
          //  dialog.cancel();
           // }
        //});

        // Showing Alert Message
      //  alertDialog.show();
    //}

    @Override
    public void onLocationChanged(Location location) {
        //getLocation();
    }
    @Override
    public void onProviderDisabled(String provider) {
    }

    @Override
    public void onProviderEnabled(String provider) {
    }

    @Override
    public void onStatusChanged(String provider, int status, Bundle extras) {
    }

    public Location getLocation() {
        locationManager = (LocationManager) 
                getSystemService(LOCATION_SERVICE);

         //getting GPS status
         isGPSEnabled = locationManager
                .isProviderEnabled(LocationManager.GPS_PROVIDER);

        // getting network status
        isNetworkEnabled = locationManager
                .isProviderEnabled(LocationManager.NETWORK_PROVIDER);


            if (isNetworkEnabled) {
                locationManager.requestLocationUpdates(
                        LocationManager.NETWORK_PROVIDER,
                        MIN_TIME_BW_UPDATES,
                        MIN_DISTANCE_CHANGE_FOR_UPDATES,  this);
            Log.d("Netork", "Network");
            if (locationManager != null) {
                location = locationManager
            .getLastKnownLocation(LocationManager.NETWORK_PROVIDER);
        }
        }

            // if GPS Enabled get lat/long using GPS Services
            if (isGPSEnabled) {
                if (location == null) {
                    locationManager.requestLocationUpdates(
                            LocationManager.GPS_PROVIDER,
                            MIN_TIME_BW_UPDATES,
                            MIN_DISTANCE_CHANGE_FOR_UPDATES,this );
                    Log.d("GPS Enabled", "GPS Enabled");
                    if (locationManager != null) {
                        location = locationManager
                                .getLastKnownLocation(LocationManager.GPS_PROVIDER);
                        }
                    }
                }

        return location;
    }

    @Override
    public void onDestroy() {
        super.onDestroy();
    }
}

THE NETWORK IN THE LOGCAT COMES FROM THIS SERVICE CODE AT THE END IN A FUNCTION CALLED : public Location getLocation() .... And I'm calling this service from BroadcastReceiver.

Why this service gets stuck on the network message?

Cœur
  • 37,241
  • 25
  • 195
  • 267
mynavy
  • 81
  • 2
  • 9
  • Take a look at the help page to see how you can improve your questions, which will help you to get better and faster answers: https://stackoverflow.com/help/mcve – Vitor M. Barbosa May 12 '14 at 21:51
  • Thanks... im just confused about my code Becuase i dont see any errors in the logcat and its very annoying ... sorry for the long answer. – mynavy May 12 '14 at 21:56

1 Answers1

1

looks like you never break out of while(true) , so you are calling Location h=getLocation(); over and over again. Its a little bit hard to read your code, but if you aren't getting success==1 in onStart() then that would explain your problem

bkane521
  • 386
  • 2
  • 10
  • that works before... the while(true) is in the service that should work on background and keep getting coordinates untill it will break... is ther any better idea to get location updates without the while loop? – mynavy May 12 '14 at 21:52
  • It sounds like you probably want something like a broadcast receiver, take a look at [this question](http://stackoverflow.com/questions/5240246/broadcastreceiver-for-location) – bkane521 May 12 '14 at 21:56