如何获取 GPS 位置并发送短信 android

How to get GPS location and send in SMS android

我无法让 GPS 工作。我将它保存在一个名为 gps 的 SharedPreference 中,它将在 Toast 中打印为 "http://maps.google.com/?q=" + lat + " , " + lon 这是这样的,当它通过短信发送时,他们的接收者只需按下 link 即可打开地图。但是当吐司出现时,它是空白的。下面是我的代码。

private void showLocation() {

    LocationManager locationManager = (LocationManager)
            getSystemService(LOCATION_SERVICE);
    Criteria criteria = new Criteria();
    String bestProvider = locationManager.getBestProvider(criteria, false);
    Location location = locationManager.getLastKnownLocation(bestProvider);
    LocationListener loc_listener = new LocationListener() {

        public void onLocationChanged(Location l) {}

        public void onProviderEnabled(String p) {}

        public void onProviderDisabled(String p) {}

        public void onStatusChanged(String p, int status, Bundle extras) {}
    };
    locationManager
            .requestLocationUpdates(bestProvider, 0, 0, loc_listener);
    location = locationManager.getLastKnownLocation(bestProvider);
    double lat, lon;
    try {
        lat = location.getLatitude();
        lon = location.getLongitude();
    } catch (NullPointerException e) {
        lat = -1.0;
        lon = -1.0;
    }

          prefs.setPreferenceString(getApplicationContext(),"gps" ,"http://maps.google.com/?q=" + lat +  " , " + lon);



}

要查找您的位置,请尝试使用 GPSTracker。 link

并使用此代码。

        gps = new GPSTracker(LauncherActivity.this);
        latitude = gps.getLatitude();
        longitude = gps.getLongitude();

还有一件事,检查您的设备,它是否支持 GPS?它(GPS)启用了吗?如果您的设备的 GPS 未启用,您将得到 null....

如需更多帮助...请查看我的 github repo

I am trying to make such app,这是运行良好的 toast 代码:

  Handler handler3 = new Handler(Looper.getMainLooper());
    handler3.post(new Runnable(){
        @Override
        public void run(){
            Toast.makeText(context,"mensagem",Toast.LENGTH_LONG).show();
        }
    });