GPS Locations only from network

Viewed 574

I am getting locations from network only not gps.i need gps locations not network provider..but as i see in my logfile..i am only getting network location which are not accurate.so i need to have gps locations..please help me out where i am doing wrong.thanks in advance..

if(isNetworkEnabled)
{
    try
    {
        locationManager.requestLocationUpdates(LocationManager.NETWORK_PROVIDER, 1000, 0,
        ll = new LocationListener() {

            public void onLocationChanged(Location loc) 
            {

                try {
                    location = loc;
                    latitude = location.getLatitude();
                    longitude = location.getLongitude();
                    logFile log=new logFile();

                    dt = location.getTime();
                    log.createFile("Location Changed NETWORK:"+latitude+""+longitude+"time:"+dt);
                                        setdateAndtime(dt);
                } catch (Exception e) {
                    String errMsg= e.getClass().getName() + " " + e.getMessage();
                    logFile log=new logFile();
                    log.createFile("Error in GPS TRACKER When Location Changed"+errMsg+"\n");
                }

            }

            public void onProviderDisabled(String provider) {}

            public void onProviderEnabled(String provider) {}

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

        location = locationManager.getLastKnownLocation(LocationManager.NETWORK_PROVIDER);
        if (location != null) {
            latitude = location.getLatitude();
            longitude = location.getLongitude();
            dt = location.getTime();
            setdateAndtime(dt);

            logFile log=new logFile();
            log.createFile("Location From NETWORK:" + latitude + " " + longitude +
                     "time:" + dt + ":" + location.getProvider() + location);
        }

    }
    catch(Exception e)
    {
        System.out.println(e+"Error MSg");
    }
}
if(isGPSEnabled)
{
    try
    {
        if (location != null) {

            locationManager.requestLocationUpdates(LocationManager.GPS_PROVIDER, 1000, 0,
            ll = new LocationListener() {
                public void onLocationChanged(Location loc) 
                {
                    try {
                        location = loc;
                        latitude = location.getLatitude();
                        longitude = location.getLongitude();
                        logFile log=new logFile();

                        dt = location.getTime();
                        log.createFile("Location Changed GPS:"+latitude+""+longitude+"time:"+dt);
                        setdateAndtime(dt);
                    } catch (Exception e) {
                        String errMsg= e.getClass().getName() + " " + e.getMessage();
                        logFile log=new logFile();
                        log.createFile("Error in GPS TRACKER When Location Changed"+errMsg+"\n");
                    }

                }

                public void onProviderDisabled(String provider) {}

                public void onProviderEnabled(String provider) {}

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

            location = locationManager.getLastKnownLocation(LocationManager.GPS_PROVIDER);

            if (location != null) {
                latitude = location.getLatitude();
                longitude = location.getLongitude();
                dt = location.getTime();

                setdateAndtime(dt);

                logFile log=new logFile();
                log.createFile("Location From GPS:" + latitude + " " + longitude + 
                            "time:" + dt + ":" + location.getProvider() + location);
            }
3 Answers
Related