简体   繁体   中英

Get location by Gps not working

I have this error .

02-13 15:13:18.110: E/AndroidRuntime(2256): java.lang.RuntimeException: Unable to start activity ComponentInfo{scom.example.sampol/scom.example.sampol.MainActivity}: java.lang.NullPointerException

this is my code . on getting location

public void onclickLocation(View v){

            txt1=(TextView) findViewById(R.id.textLocation);
            /* Use the LocationManager class to obtain GPS locations */
             mlocManager = (LocationManager)getSystemService(Context.LOCATION_SERVICE);
            LocationListener mlocListener = new MyLocationListener();
            mlocManager.requestLocationUpdates( LocationManager.GPS_PROVIDER, 0, 0, mlocListener);

        }
        /* Class My Location Listener */
        public class MyLocationListener implements LocationListener {

            @Override
            public void onLocationChanged(Location loc){
                loc.getLatitude();
                loc.getLongitude();
                Geocoder gcd = new Geocoder(getApplicationContext(), Locale.getDefault());
                 try {
                    addresses = gcd.getFromLocation(loc.getLatitude(),loc.getLongitude(), 1);
                } catch (IOException e) {
                    // TODO Auto-generated catch block
                    e.printStackTrace();
                }
                 text=(addresses!=null)?"City : "+addresses.get(0).getSubLocality()+"\n Country : "+addresses.get(0).getCountryName():"Unknown Location";

                String textVal = "My current location is: "+ text;

                txt1.setText(textVal);

            }

            @Override
            public void onProviderDisabled(String provider){
                Toast.makeText( getApplicationContext(),"Gps Disabled",Toast.LENGTH_SHORT ).show();
            }

            @Override
            public void onProviderEnabled(String provider){
                Toast.makeText( getApplicationContext(),"Gps Enabled",Toast.LENGTH_SHORT).show();
            }

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

Have you add this Permission in Your Manifest xml? Of Access Course Location And Access Fine Location in Manifest

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM