0

で書かれHTML5、ラップされたアプリケーションがありますPhoneGap

アプリケーションに地図があり、GPSでユーザーの位置を確認したい。

私はそれを次のように試しました:

JSには、マーカーの位置を変更する関数があります。

function GPS(lat, lon) {
    alert('Now U move');
    var CurrentPosition = new google.maps.LatLng(lat, lon);
    markerMyLoc.setPosition(CurrentPosition);
}

Javaには、場所を考慮してJS関数を送信する関数があります。

public class MainActivity extends DroidGap {

private LocationManager locationManager;
private LocationListener locationListener;

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    super.setIntegerProperty("splashscreen", R.drawable.splash);
    super.loadUrl("file:///android_asset/www/XXX.html", 10000);

     locationManager = (LocationManager) getSystemService(Context.LOCATION_SERVICE);  

     locationListener = new GPSLocationListener();

      locationManager.requestLocationUpdates(
        LocationManager.GPS_PROVIDER, 
        0, 
        0, 
        locationListener);

    } 
}

GPSLocationListenerクラス:

public class GPSLocationListener implements LocationListener 
{
  @Override
  public void onLocationChanged(Location location) {
    if (location != null) {
        GPScls MyGPS= new GPScls();
        MyGPS.GPS(location.getLatitude(),location.getLongitude());
    }
  }

@Override
public void onProviderDisabled(String provider) {
    // TODO Auto-generated method stub

}

@Override
public void onProviderEnabled(String provider) {
    // TODO Auto-generated method stub

}

@Override
public void onStatusChanged(String provider, int status, Bundle extras) {
    // TODO Auto-generated method stub

}
}

GPSclsクラス:

public class GPScls extends DroidGap {
    public void GPS(double latitude,double longitude) {
        super.loadUrl("javascript:GPS("+latitude+","+longitude+")");
    }
}

警告:alert('Now U move');表示されていませんが、誰かがこれを解決するのを手伝ってくれますか?

4

1 に答える 1

0

GPSから回答を返すのに十分ではなかったことに気づきました

次の質問を見てください。

関数onLocationChangedはAndroidデバイスのすべての動きを呼び出しますか?

于 2013-01-09T11:27:12.750 に答える