如何获得gps和网络位置以及j2me位置API

时间:2012-05-17 07:35:27

标签: networking java-me gps location jsr179

我正在尝试实现一种位置跟踪器类型的应用程序。我需要在特定时间获取位置,但在我尝试时,我注意到,如果我的手机没有获得GPS位置,它不会寻找网络位置。当我在手机的设置下转动gps它会获得网络位置。我如何同时使用或设置代码中使用的内容。我使用java ME位置API。 提前谢谢。

编辑: 这是我获取位置的代码:

    Criteria cr= new Criteria();
    cr.setHorizontalAccuracy(500);
    cr.setCostAllowed(true);

    // Get an instance of the provider
    LocationProvider lp= LocationProvider.getInstance(cr);
    // Request the location, setting a one-minute timeout
    Location l = lp.getLocation(60);
    QualifiedCoordinates c = l.getQualifiedCoordinates();

    if(c != null ) {
        // Use coordinate information
        double lat = c.getLatitude();
        double lon = c.getLongitude();
        double acc = c.getHorizontalAccuracy();

        form.append("latitude: " + lat);
        form.append("\nlongitude: " + lon);
        form.append("\nacc: " + acc);
    }

1 个答案:

答案 0 :(得分:0)

您无法使用API​​为位置提供程序定义方法。硬件的实现是透明的(这是在这个操作背后)。 你写的是正确的。您只能从一个来源获取位置,此来源取决于手机设置(位置设置)。

但是,您可以通过识别与设备关联的网络单元来尝试读取基于网络的位置。 提供代码示例的article应该是有用的。